Jump to content

Recommended Posts

Posted

I've made some benchmarks comparing TSC vs. HPET timers impact for CPU's gaming performance and spoiler: it matters quite a bit.

First a little bit of history/background:

PM Timer (ACPI Power Management timer) is a high-latency timer used in Windows 2000 days, it clocks at 3.579545 Mhz

TSC is a low-latency timer on the CPU, originally, it clocked at the same freq as the CPU, it is used by Windows XP by default

So when CPUs started downclocking to save power TSC would also downclock, that's why with Vista Microsoft opted for:

HPET is a high-latency timer on the motherboard, used by Windows Vista, it clocks at for example 14.31818 MHz on Ivy-Bridge and 19.200000 Mhz on Alder Lake, it is unstable on newer Intel platforms. Vista fallbacks to PM timer when HPET is not available

Invariant TSC is a TSC (low-latency) that always clocks at the CPU's base freq regardless of whether it pawer-saves or turboes, it is used by Windows 7+, but Windows XP can use it too as it would an old-school TSC. On older platforms where TSC is not invariant Windows 7 uses HPET just like Vista

Windows 7 still uses HPET to sync TSC from time to time, but XP can still work stable on newer system without it so Vista should also be able to if forced to use TSC.

 

Benchmarks were performed on 12th gen Alder Lake i5-12600, DDR5-4800MT/s, NVIDIA 3090

Windows 10 has all of it's new security mitigations that impact performance disabled, all systems are debloated, all systems have Meltdown/Spectre patches disabled/ not applited, BIOS patch that allows Vista and 7 to properly use turbo on Alder Lake is applied

The benchmark was Cinebench R15 OpenGL, with a 3090 this benchmark is almost exclusively CPU-bottlenecked

Here are the results (a median run out of 3 for each config), lowest to highest

215.15 FPS - Windows 10 HPET

221.91 FPS - Windows 8.0 HPET

234.92 FPS - Windows Vista HPET

242.84 FPS - Windows 10 TSC

257.58 FPS - Windows 8.0 TSC

 

Vista TSC is dnf cause I don't know of any way to force it to use it, the code could still be there left from XP times.

Vista HPET on ivy-bridge usually scores higher than 10 TSC, but lower than Windows 7 TSC, Windows 8.0 TSC also wins there being marginally better than 7, but I don't have all of those system installed on ivy-bridge to provide a benchmark right now, and these are results I remember from back when I did

 

This make's sense since when I run falco PhenomII Tweaker's Timer Check (Tweaker is only for AMD PhenomII, but timer check is universal), it runs a benchmark of running 1 Million QueryPerformanceCounter calls.

On Alder Lake it takes 2243ms, whiles on Ivy-bridge around 400ms, So Intel's new HPET is around 5 times slower than the old one

 

Now, after @win32 created his new patch for Haswell+ Vista instability Vista is now very much usable on 12th gen Intel - there is absolutely 0 serious crashes but the stability is not yet perfect - 3 services and startup programs still sometimes fail to start.

 

So the question is obviously how to force TSC on Vista for improved stability and performance? :dubbio:


Posted
13 hours ago, TSNH said:

after @win32 created his new patch for Haswell+

Where is it!?

 

13 hours ago, TSNH said:

So the question is obviously how to force TSC on Vista for improved stability and performance? :dubbio:

No such setting on either of my motherboards.

HPET is of course always off, every first grader that plays games knows that.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...