
Windows 8 Benchmark Records No Longer Accepted - dz0ny
http://hwbot.org/news/9824_breaking_windows_8_benchmark_results_no_longer_accepted_at_hwbot
======
swat535
So this only affects you if you change BCLK at runtime. Which is something
that basically never happens unless you do it yourself explicitly. Dynamic CPU
speed only modifies multiplier which does not cause this issue. This is a non-
issue for 99% of people, it's only an issue if you are measuring your manhood
on an internet website.

~~~
redthrowaway
It's also an issue for anyone who's overclocked their gaming rig, as the
computer won't keep accurate time anymore. See this video for a demonstration
of that:

[http://www.youtube.com/watch?v=brkDKgvXKko&feature=player_em...](http://www.youtube.com/watch?v=brkDKgvXKko&feature=player_embedded)

~~~
Guvante
Why are you overclocking at run-time vs the simpler BIOS time overclock?

Sure while you are testing stability making run-time changes is nice, but once
you know what your system can handle it makes sense to just set that
permanently.

Also hopefully a fix will come out soon, since it is already well known that
the ratio is allowed to change.

------
ck2
Isn't this a problem on any os with cpu "speed stepping" ?

We lose seconds each day on our linux servers and have to use ntpd to stay in
sync.

~~~
wbl
The real-time clock on the motherboard should correct for this.

~~~
dz0ny
Windows only reads clock at startup and writes it shutdown.

~~~
archivator
And so does my Fedora install (let's not blame Redmond unnecessarily).

My Android phone is even worse - it drifts by about 5-10s a day. Not a
nightmare but it's still a lot more than my (probably unrealistic)
expectations of 21st century hardware.

~~~
freehunter
My car also has a drifting clock without a dynamic CPU, losing two minutes
every three months. It also doesn't have the ability to sync with NTP so it
can't correct itself.

Apparently clocks are hard.

~~~
harrytuttle
Clocks are easy. Even accurate clocks are easy. However, accurate clocks are
expensive which is where the problem is

------
ape4
These benchmarking guys are not typical Windows uses. Regular users probably
appreciate NTP updates.

~~~
masklinn
This has nothing to do with NTP.

------
ohwp
I'm a little confused. Does Windows 8 initially use the real time clock and
the MHz as reference without checking if the MHz does change over time?

~~~
mjg59
The Time Stamp Counter on modern CPUs runs at the same speed regardless of the
CPU frequency or idle state, _providing_ that the base clock isn't modified.
Under normal use, that's absolutely fine - the OS can calibrate its internal
clock against a wall clock timesource at boot time, and then use the TSC
(which is very cheap to read, unlike the actual RTC) as a reliable time
source.

The problem here is (apparently) that calls that used to cause Windows to read
the RTC now give you a TSC-based time instead. If the TSC speed has changed
since boot (which should only happen if the user has explicitly changed the
CPU base clock, never under normal use) then you have no way to calibrate the
OSes idea of time against an actual time source. This is a problem if you're
trying to perform accurate benchmarks when under/overclocking.

So yeah, Windows 8 appears to use the CPU TSC without recalibrating when
there's a change in TSC tick rate, but that's because the TSC tick rate isn't
supposed to change.

~~~
ambrop7
> So yeah, Windows 8 appears to use the CPU TSC without recalibrating when
> there's a change in TSC tick rate, but that's because the TSC tick rate
> isn't supposed to change.

Right - I'd say that the problem they're having is just a bug in the program
they use to change the tick rate at runtime, that is, not making the kernel
aware of the change. The article is written as if there is something
fundamentally wrong with clock implementation on Win8.

~~~
wmf
Because the TSC speed is never supposed to change at runtime, I would guess
there is no API to notify Windows that you changed it.

------
helloNSA_
This has been a significant issue on the windows 8 machines I've handled. It's
mitigated somewhat by creating your own scheduled task to more frequently do
ntp updates.

I like this guide:

[http://www.pretentiousname.com/timesync/](http://www.pretentiousname.com/timesync/)

~~~
Tomdarkness
You modify the BCLK regularly whilst booted into Windows on the different Win
8 machines you handle? Even when overclocking you'd normally not mess with the
BCLK unless you are really wanting to push your overclock.

~~~
helloNSA_
Windows 8 keeps terrible time on laptops or anything else which is trying to
power save by varying the clock. I'm not overclocking shit. The OS just
doesn't time sync frequently enough. This is why I posted a link about
increasing the frequency of time syncs.

This has not been a problem with Windows 7, or XP on the same equipment.

~~~
Tomdarkness
That is not how the power saving works. It does not vary the BCLK rather it
alters the multiplier. If it varied the BCLK by such large amounts to achieve
typical low power frequency levels then you'd likely run into some
catastrophic stability problems as the BCLK is also used by the integrated
memory controller and QPI.

------
jheriko
what, the age old problems with the rtc are not handled by windows 8
benchmarking?

i feel this has been noticed nearly 20 years late...

maybe its because i have been a low level guy for a while, but ffs people,
know your platform before you start using random features. despite the
overriding idea that platform and 'big company' apis are good there are plenty
of cases where you can do much better yourself - this is why so much of games
industry code is hand rolled.

------
beedogs
I'm guessing this is another ham-fisted Surface decision that was forced onto
the Windows 8 developers.

