TWEAK: Enable HPET (in BIOS and OS) for better performance and FPS


Recommended Posts

Tried turning it on in BIOS and the OS, and I do notice the mouse cursor ghosting but it is very minor (drags about 5-10 pixels behind the main mouse and it's very hard to notice unless I'm looking for it) but no real difference in performance (haven't tried any games or anything yet).

That being said, mine takes about 300 ticks to get a ratio of 1 and my DPC latency averages around 100 (fluctuates from 70-120) both with and without HPET enabled (completely disabled has roughly the same DPC latency as completely enabled).....in terms of benchmark testing, I see no real difference on my system with and without HPET, but I guess only time will tell if it holds stable/doesn't lag.

EDIT: The only noticeable change is my QueryPerformanceFrequency went from 3.14 or so (can't remember exact values) to 14.32.

What (if any) benefit would I see if I enable this in OS only, the BIOS does not have any option for HPET. Is it possible it might be labeled something else besides HPET?

Couldn't find anything in the BIOS, think it's hidden. Though I ran bcdedit /set useplatformclock true and I'm getting 14.31818 MHz now. But the ratio took longer to stabilise at 1.000 (took 180 seconds), it was alternating between 0.9997 and 0.9999 a lot.

Not spotted anything bad yet, like ghosting mouse pointer or such. My DPC latency remains unchanged, averages at 60-80us

One can still set the option in Windows if HPET is not found from BIOS. However if one has ACHI then it's a surprise if HPET is missing. One can also check HPET from device manager under system devices if you find "high precision event timer" then your hardware supports it. If you don't have HPET but use bcdedit to use platformclock,, you probably are better than TSC which is reduced timer. Actually Win Vista was heavily pushed towards HPET but they went backwards in Win7 for some reason, one is the green agenda.

Im running it on a i7 [email protected] (clocked in BIOS), and Asus P8Z68-V Pro mobo/NV 570GTX and enabling HPET & setting windows to solely use HPET via command prompt has fixed my micro-stuttering id see in BF3.

Result :) Cheers OP I owe ya a beer :)

Great! Good to hear. The best HPET result is that pushes that little extra by using accurate high frequency timer instead of TSC.

Couldn't find any option in the BIOS, but I did perform the HPET only tweak.

Is this good?

What hardware setup you have? Your setting of use platformclock sure is a lot better than TSC. Did you test any games? TSC is the same or lower than 1 core clock (TSC is locked to frequency that I don't right now remember), so combination and sync might or might not be better depending on hardware. HPET frequency can run a lot higher than TSC.

What (if any) benefit would I see if I enable this in OS only, the BIOS does not have any option for HPET. Is it possible it might be labeled something else besides HPET?

No not really, if you don't find HPET in BIOS then it's locked or completely unavailable. You can also check HPET from device manager under system devices if you find "high precision event timer" then your hardware supports it. If you don't have HPET but use bcdedit to use platformclock it will result to LAPICs which is better than TSC or TSC+LAPICs.

----------

One can only test and see. And especially test with games.

Also, always keep your drivers and BIOS up to date.

(There might be APIC or LAPIC in bios, check these with platformclock enabled / disabled to find best performance.)

I have an NForce i630/7100 motherboard and an Intel Core 2 Duo CPU (2.66GHz). I just checked Device Manager and HPET is there. Thanks for the tweak, I can't wait to test it out with Diablo 3!

My machine runs the slowest timer with it off, but it just seems more stable. Any speed increases I've seen could be attributed to a clean reboot.

zGobM.png

(Core 2 Quad Q9450 @ Default Clocks, ASUS Rampage Formula X48)

Thanks for being helpful Hardbag! I am testing various games. BF3 is my main one. I will post results when done testing.

I have come to the conclusion that this is just like snake oil, it does not help one bit! I did some checking and discovered that this option has to enabled in the BIOS for any 64BIT OS to install, and even after 'enabling' it in windows, I see no change what so ever.

Strange. My Windows 7 64-bit installs just fine with HPET disabled. :rofl:

Yeah, mine was in 32-bit mode since I got it, disabled it to test it and noticed no measurable change, enabled it in 64-bit mode and still noticed no measurable change......point is I run Windows 7 64-bit and went from 32-bit HPET, to disabled, to 64-bit and never had any problem, so it definitely doesn't need to be enabled for a 64-bit OS.

I didn't notice any sort of difference. I'll probably set it back to disabled in Windows. If this would honestly give a performance gain, MIcrosoft would have known already and implemented it by default.

Definitely not placebo, both my desktop and laptop load certain things faster. The most noticeable thing is navigation in event viewer, the panels are opening faster, also windows explorer is more responsive.

On the laptop is even better, It is a lot quicker in almost everything, the query freq went from 1.4 to 14.3 MHz. My desktop runs on Intel P35 chipset and the laptop on 965 chipset, both with Windows 7 SP1 32bit.

I still call BS. I have had it enabled and upon reading this thread have disabled it. My system boot faster now that I have disabled it and my programs launch a lot quicker as well. When I had it enabled it took quite a bit to get to the desktop upon boot and launching programs was a bit slower.

I think the reason no-one can agree if it helps or not is because it makes some things better and some things worse.

General use of the PC seems worse, like the example above, booting takes longer etc,

Gaming seems hit and miss, it cured my BF3 CFX problem, for the 1st time ever I can play with 2 cards now, other games seem smoother when they work, but some freeze up every few seconds

I guess thats why MS didn't enable it as default, too many problems for it to be a solid part of the OS code as default

It depend on hardware setup, some get better response especially in games, and some doesn't,

In Win Vista HPET was better used/implemented, but in Win 7 it was drawn back, probably because of uncompatibility issues with many, so they (MS) stick with TSC.

I hear that in Windows 8 LAPICs are dropped off...

  • 2 weeks later...

Just thought I would voice my expierence with this.

HPET in BIOS: Enabled (was Enabled)

HPET Bit Level in BIOS: 64bit (was at 32bit)

HPET in WINDOWS: True (unknown previous setting).

Tested: Grand Theft Auto IV

Results: Able to max out every setting including vSync and Distance, Detail. Game was night and day smoother also. So definatly noticed it here. Was never able to do vSync smoothly.

Tested: Windows

Results: Snappier transitions, and overall improved expierence.

Tested: TotalMedia Theater 5

Results: Transitioning from Full Screen to De-Maximized has also improved.

Rig Specifications

CPU: OC 3.8Ghz 2700k i7 2nd Generation

HD: Raid-0 Sata III Corsair 60GB x 2 = 120GB

Graphics: eVGA 460GTX 1GB

Memory: 16GB DDR3 1600Mhz Corsair XMS Type

I applied this a while ago. I just noticed over the past couple of days that I'm getting some occasional cursor lag, it'll just stick for like quarter of a second and then carry on as usual.

Did anyone else get this as an issue with changing the system timer?

Thanks for the tip though is it maybe a Intel only thing? I haven't looked in my BIOS yet but I'm on a GIGABYTE AM3+ board and the device manage lists no HPET device :pinch: (Or is it related to the fact that I still use a 32bit OS? :p)

EDIT: Looking through the online manual my GA-870A-UD3 seems to support HPET, I guess I will play around with it sometimes^^

My ratio takes a few minutes to settle at 1.000, should I be worrying about this?

I also discovered I had 32 bit HPET enabled in BIOS, and not in Windows. Since I already had it enabled, I guess I should see no difference going to 64 bit and enabling it in Windows except maybe a decrease in microstutters.

It seems as if this option was always on in my BIOS, but disabled in the OS. I enabled it and the WinTimer app reported my sync performance at 14.something MHZ, and whilst it appeared to have no real effect in gaming (my primary usage) it did seem to make my mouse notably more laggy. The BIOS I have only had options for "Enabled" and "Disabled" so I can't tell you whether it was 32 or 64 bit, and whether it was running in mixed mode but my performance seems best with it enabled in BIOS but disabled in OS. Setup is as follows:

i7-2700k overclocked to 4.8 GHZ (1.4v)

Asus ROG Maximus IV Extreme-Z Z68 Motherboard (Bios version 3304)

8GB Corsair Vengeance LP DDR3-1600

2GB ATI 6950 (Bios Modded to unlock the extra shaders)

OCZ Agility 3 60GB boot drive

  • 2 weeks later...

Latencies are about the same as before (according to that DPC Latency Checker tool). QueryPerformanceFrequency is now at 14.31818 MHz, but I don't really notice a difference in performance.

I'll have to give it more time and see what happens.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • While I miss Outlook for a couple of small things, I use Thunderbird now because I don't like how MS wants to force you to change things.
    • Chrome has history of being the browser everyone uses because Internet Explorer sucks, not realizing that Edge changed that, but people got into the habit of using Chrome. I use Brave and I've never been happier with a browser. It does what it is meant to do and gets out of the way.
    • Wino Mail -> Microsoft Outlook (the new one). Link: https://github.com/bkaankose/Wino-Mail Just sayin.
    • Microsoft launches Godot Sample to streamline Xbox PC game development on the engine by Pulasthi Ariyasinghe Microsoft today announced a new endeavor that aims to make it simpler for Godot developers to get their products into the Xbox PC ecosystem. Dubbed the "XBOX Godot Sample," this is a new public reference for developers using the open-source engine. This is set to serve as an example of how Microsoft GDK, Xbox Services, and PlayFab can be integrated into their projects. The sample is available now on GitHub as a working example. This covers key features in gaming projects that developers may need to release their projects on Xbox PC, with everything from matchmaking and game sign-in to gamepad compatibility with Godot being covered. This release is being called the first step in giving Godot developers the tools to bring their games over to Xbox PC, with more changes to come based on feedback and issue reports. However, the company was clear that this is not related to bringing Godot projects to Xbox consoles. The engine's open development model stops it from accessing console SDKs due to the requirement of NDAs and legal contracts. Here's how it explained this Godot sample project's focus: This is a source-only sample, not a product. It's MIT-licensed at the wrapper layer; the GDK and PlayFab dependencies still require their own installs and license acceptance, consistent with our other XBOX samples. There is no set update cadence for support or maintenance. We’ll watch the repo, monitor issues, and iterate where it makes sense, but this isn't a commercial release. That said, we’re excited to hear your feedback and see any community PRs, as we evolve this together. This is the first step in bringing Godot for XBOX on PC. We plan to evolve it over time based on what the community tells us is most valuable. This sample is built specifically for XBOX on PC. It doesn’t include support for XBOX Series X|S or XBOX One. If you’re already building for XBOX Series X|S or XBOX One, please talk with your XBOX representative. If not, you can get started by signing up here. Game developers can find the XBOX Godot Sample by heading to GitHub over here. Documentation on how to get started with Godot for building an Xbox PC project can be seen here.
  • Recent Achievements

    • Collaborator
      Asgardi earned a badge
      Collaborator
    • Conversation Starter
      mobandz earned a badge
      Conversation Starter
    • Apprentice
      fernan99 went up a rank
      Apprentice
    • One Month Later
      nothanks earned a badge
      One Month Later
    • One Month Later
      B2Proxy earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      468
    2. 2
      PsYcHoKiLLa
      243
    3. 3
      Skyfrog
      79
    4. 4
      FloatingFatMan
      73
    5. 5
      Michael Scrip
      60
  • Tell a friend

    Love Neowin? Tell a friend!