CPU scheduling and thread priority

HPET and Windows timer boot settings

What HPET is, what useplatformclock, useplatformtick and disabledynamictick do, and why Microsoft calls them debugging options

Last updated

Should you change HPET or timer boot settings for gaming?

HPET, the High Precision Event Timer, is a hardware timer that Intel and Microsoft developed for time-sensitive work. On modern PCs Windows normally uses the processor's own time stamp counter for high-resolution timing and falls back to HPET only when needed. The boot options most often suggested in gaming guides, useplatformclock, useplatformtick and disabledynamictick, are documented by Microsoft as options for debugging.

Registry location and values

useplatformclock

Location
Boot configuration data, changed with bcdedit from an administrator command prompt
Value name
useplatformclock
Type
Boot configuration value
Default
Not present unless set
ValueWhat it does
yesForces the platform clock to be used as the system's performance counter. Microsoft: this option should only be used for debugging.
Not presentWindows chooses the timing source itself.

useplatformtick

Location
Boot configuration data, changed with bcdedit from an administrator command prompt
Value name
useplatformtick
Type
Boot configuration value
Default
Not present unless set
ValueWhat it does
yesForces the clock to be backed by a platform source, with no synthetic timers allowed. Windows 8 and later; for debugging.
Not presentWindows chooses how the clock is backed.

disabledynamictick

Location
Boot configuration data, changed with bcdedit from an administrator command prompt
Value name
disabledynamictick
Type
Boot configuration value
Default
Not present unless set
ValueWhat it does
yesDisables the dynamic timer tick feature. Microsoft documents it for debugging.
Not presentDynamic timer tick stays enabled.

What Windows actually does with this

Windows gives applications high-resolution timing through QueryPerformanceCounter. Microsoft documents that on most systems this is based on the processor's invariant time stamp counter, and that Windows automatically falls back to a platform timer such as HPET or the ACPI power management timer when the time stamp counter is unsuitable. Reading a platform timer has higher access latency because it needs a system call. Setting useplatformclock forces the platform clock to back the performance counter even on a system where Windows would otherwise have used the time stamp counter.

What it affects

Which hardware source Windows uses for its performance counter and clock tick. Microsoft says applications do not need to check or validate QueryPerformanceCounter themselves, because Windows handles the choice of source.

Is it worth changing?

Leave all three at their defaults. Microsoft labels each of these boot options as intended only for debugging, and Windows already selects a suitable timing source on its own. Microsoft's documentation gives no support to the common belief that forcing HPET or useplatformclock improves games, and on a PC with a reliable time stamp counter it implies the opposite, since the platform clock has higher access latency. If a guide or tool set any of these values, removing them is the safe step.

What can go wrong

Microsoft warns that changing boot configuration can make a computer inoperable, and that BitLocker and Secure Boot may need to be suspended before some boot settings are changed. Every change to these values needs a restart to take effect.

How to undo it

From an administrator command prompt, run bcdedit /deletevalue useplatformclock, and likewise for useplatformtick and disabledynamictick, then restart. Run bcdedit /enum {current} afterwards to confirm none of them is listed.

Create a System Restore Point before editing the registry. Every setting on this page is reversible, but a restore point is the difference between undoing one change and reinstalling Windows.

Which Windows versions this applies to

Windows 10 and Windows 11. The useplatformtick option applies to Windows 8 and later.

HPET and Windows timer boot settings: common questions

How do I check whether useplatformclock has been set?

Run bcdedit /enum {current} from an administrator command prompt. If useplatformclock, useplatformtick or disabledynamictick appears in the output, it has been set; if none appears, Windows is using its defaults.

Should HPET be enabled or disabled in the BIOS?

Firmware options for HPET differ between motherboards and are not documented by Microsoft. Windows decides which timer to use by itself, so the firmware default is the safe choice unless your motherboard maker advises otherwise.

Does disabling dynamic tick reduce input delay?

Microsoft documents disabledynamictick only as a debugging option and publishes no gaming benefit for it. It stops Windows skipping timer ticks when the processor has nothing to do, so the default is the sensible setting.

Is HPET the same thing as timer resolution?

No. Timer resolution is how often Windows' clock interrupt fires when an application requests finer timing. These boot options instead decide which hardware source backs the clock and performance counter.

Sources

Related settings

Guides that cover this setting

Every change JINSHI PC Tweaks can make is listed on the complete tweak list, and the product itself is described on PC Tweaks for gaming.


If you would rather not do it by hand

JINSHI Tweaks: all four apps

£29.99one-time

Get all four apps

Every change can be reversed on its own. No subscription, nothing to renew.

Get all four — £29.99