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

    • WhatsApp is getting usernames, and you can reserve your preferred one now by Fiza Ali Sharing your phone number isn't always something you want to do, especially with people you've just met. Whether it's someone from a class, a local community group, or a sports team chat, handing over your number can feel like giving away more personal information than necessary. That's exactly the problem WhatsApp is trying to solve with its upcoming usernames feature. The company has announced that users can now reserve a unique WhatsApp username ahead of the feature's wider rollout later this year. Once usernames become available, they'll let people connect without revealing their phone numbers. It's a change that makes a lot of sense for group chats. Right now, everyone in the group can see your phone number. With usernames enabled, that won't necessarily be the case when someone contacts you for the first time. WhatsApp says it's opening username reservations early because more than three billion people use the app, meaning plenty of people are likely to want the same usernames. Reserving one now gives users a better chance of securing the name they actually want before the feature launches more broadly. If your preferred username is already taken, WhatsApp will also offer a built-in username generator to suggest available alternatives. The feature isn't only aimed at individual users. Creators, businesses, and organisations will be able to claim the same username they already use on Instagram or Facebook, making it easier to keep a consistent identity across Meta's apps. Furthermore, privacy is a big part of how WhatsApp is introducing usernames. There won't be a public directory where people can browse or search for usernames. Instead, people will need to know your exact username before they can start a conversation with you. Additionally, users can also choose to enable a username key, which adds another layer of control by requiring people to enter that key before sending a message. Once the feature rolls out, people who choose to use a username will no longer have their phone number shown when messaging a person or business for the first time. If you want to reserve a username, make sure you're running the latest version of WhatsApp, then head to Settings > Account > Username. The tech giant says usernames will roll out gradually over the coming months, and users will receive an in-app notification when the feature becomes available in their country.
    • When I think about a network, there are really two aspects, the hardware and the wiring. So here is what I would do for both. Wiring: Use Cat6A for the patch panel, outlets, and all structured cables (cables installed in walls). Run plenty of Wireless Access Point (WAP) cables, as a general rule, assume a signal can only pass through 2-3 walls and can't pass through a floor (that is conservative, but trust me on this if you want strong WiFi)  Cat6 patch cables are fine for now if you don't plan to run 10gig, those are easy to replace later if needed. Run OS2 single-mode fiber to anywhere you think you may have a server or sub-switch. (yes, single-mode for everything on a small network, don't mess with multimode unless you have entire racks of servers and that minor module cost and power savings will matter). If you really want to future proof, also run fiber to any high density WAP locations, it is likely that WiFi 8 WAPs will push the limits of 10g. Run 6-12 pairs of single-mode fiber between your MDF and the building's MDF, even if you only need 1 or 2 pairs now, those extra pairs will pay off down the road. Hardware: (its easy to say "get all the features incase you need them", so instead of futureproofing, I am going to take approach of suggesting areas worth investing in, and areas you can save money). Don't overspend thinking you need every feature on every port. You don't need 10g on every port, you don't need PoE on every port. Don't overspend on redundancy either, unless you are ready to buy two of everything, don't waste money buying two of some things and not others. Dual power supplies are worthwhile, but probably not HA or multi-path redundancy.  Get 1 "distribution layer" switch that your router/firewall will connect to as well as all your access layer switches below. This should be a 10g switch with a combination of copper and SPF ports and should be a fully managed switch. Given that you said it is a small network, I suggest also using that distribution layer switch for servers and WAPs, meaning it will need PoE. Speaking of wireless, get good professional tri-band WAPs, and either turn on the band stirring options, or limit 2.4 to an IoT only SSID. This will provide a solid WiFi capable nearly everything but the highest of bandwidth clients...you could even consider skipping wiring workstations depending on usage. Access layer switch for workstations and printers can be cheaper switches, 2.5g is a good sweet spot between price and future proofing, but even 1g is fine for most individual clients (the kind that could probably be fine on WiFi). You can consider saving a little on access layer switches by only getting 1 PoE switch for whatever needs it (remember your WAPs are connecting to the distribution switch, not here), and non-PoE for your workstations, because desk phones are falling out of favor. You can also save money here by not buying managed switches if you don't need them--but really do some soul searching there, if you go this route, then anything that isn't on your workstation VLAN would either need to be connected to the distribution switch, or its own switch. Also, don't feel like you need a fancy fabric stacking switches for your access layer, that is the point of the higher-end distribution layer, to remove the need for things like that at this level. Home Hardware: I'm realizing the above assumed an office setting, if this if for your house and home lab then the above still applies, but you'll probably want everything managed and PoE, just because, but you probably also don't need multiple access layer switches. if your total port count is below 24, just skip separating distribution layer and access layer and just get one nice switch with the features you want. For home use, don't worry about home running every device to the main switch, there is nothing wrong with running sub-switches for your media areas and office, those essentially become your access layer, just look for sub-switches with a 10g uplink so sharing bandwidth isn't an issue.
    • Google Meet brings Gemini note-taking to AI Pro and Ultra subscribers by Karthik Mudaliar Google's Gemini-powered "Take notes for me" feature inside Google Meet is now available to Google AI Pro and Ultra subscribers. The features work on Google Meet for web as well as on mobile, and Google says that subscribers can use it for meetings they host in many supported languages. As the name suggests, "Take notes for me" allows Gemini to listen to a meeting, generate a summary, identify action items, and save the notes as a Google Doc in the user’s Drive. After the meeting, the organizer receives an email recap with the summary and action items, while the notes can also be attached to the related Calendar event depending on the meeting setup and sharing settings. The feature isn't automatically turned on for everyone, though. Google says that all meeting participants are notified when note-taking is turned on, and users can start it from the pencil icon in Meet or enable it for future calls through Meet’s meeting records settings. For work or school accounts, administrators can also control whether the feature is available and may require explicit participant consent for note-taking, recording, or transcription features. The feature first launched back in 2024, when it was available just for selected Workspace users. Over the years, Google added refinements and more options, including the ability to enable it when scheduling meetings via Google Calendar. Google's support docs say that the feature currently supports English, French, German, Italian, Japanese, Korean, Portuguese, and Spanish, but only one language at a time. Meetings with multiple spoken languages are not currently supported, and Google recommends using the tool for meetings between 15 minutes and eight hours. The new feature makes Google Meet closer to its rivals that have AI tools already built in. Microsoft Teams has recently started offering Copilot and intelligent recap features that summarize meetings, surface highlights, and help with follow-ups, while Zoom’s AI Companion can also generate meeting summaries from desktop and mobile meetings.
    • GnuCash 5.16 by Razvan Serea GnuCash is a personal and small business finance application, freely licensed under the GNU GPL and available for GNU/Linux, BSD, Solaris, Mac OS X and Microsoft Windows. It’s designed to be easy to use, yet powerful and flexible. GnuCash allows you to track your income and expenses, reconcile bank accounts, monitor stock portfolios and manage your small business finances. It is based on professional accounting principles to ensure balanced books and accurate reports. GnuCash can keep track of your personal finances in as much detail as you prefer. If you are just starting out, use GnuCash to keep track of your checkbook. You may then decide to track cash as well as credit card purchases to better determine where your money is being spent. When you start investing, you can use GnuCash to help monitor your portfolio. Buying a vehicle or a home? GnuCash will help you plan the investment and track loan payments. If your financial records span the globe, GnuCash provides all the multiple-currency support you need. Between 5.15 and 5.16, the following bugfixes were accomplished: Bug 421610 - RFE: Include logical dates for View->Filter by "date range"The Select Range section of the Date tab of the register's Filter By dialog box is changed to provide relative, specific date, or days ago options for the start and end of the filter range. The Show number of days item label is changed to Show from days ago to better reflect what it does. Bug 436105 - esc key not working as expected in register: Enable the escape key to cancel a field edit. Bug 797384 - Gnucash doesn't handle commodity prices with big numerator/denominator properly. Bug 798004 - Next gen UI for stock transactions Bug 799314 - Add "enter now" option in scheduled transaction editor. tab to allow users to select the scheduled transactions to be included in a “Since Last Run…” window. If there are no instances of a selected transaction triggered by today’s date, the next instance is triggered. Bug 799751 - autocomplete crash Bug 799759 - Users can't Enable entries via Checkboxes on Scheduled Transactions PageAllow the Enabled box in the list of scheduled transactions to be operated instead of having to open the transaction editor dialog and change the Enabled checkbox. Also added use of the Name column as the secondary column sort for all the other columns. Bug 799762 - Poor handling of cases where hidden/placeholder accounts are used in the account register Bug 799766 - Double line preference not respected in search register Bug 799767 - POST /accounts in bindings/python/example_scripts/rest-api is broken Bug 799777 - `xaccSplitSetParent`: reparenting a committed split silently drops its KVP slots (online_id, cap-gains links) Other changes & improvements: Numeric values may now be selected to copy in the Accounts page. Add new Finance::Quote source Finnhub.io: Free API key (personal/non-professional use) available at https://finnhub.io. Set FINNHUB_API_KEY environment variable to API key to use this source. As of June 2026, free tier API limit is 60 API calls/minute. The Investment Lots report has new optional columns for Computed Annual Growth Rate. Python Bindings: Improved translation of primary object (Account, Transaction, Split, etc.) so that they can be treated as normal Python objects. This is accomplished with SWIG magic so no existing code is obsoleted. Python Bindings: Better conversion of GLists to Python lists. Python Bindings: Destroy the QofSession in the Python Session dtor to prevent leaving the database locked. [engine] Add first-class online_id accessors for Split and Account and make them available to Python bindings, removing the unused Transaction online_id property. Improve C++ implementation of QofBook. Correct the Doxygen doc for qof_instance_get/set_kvp. [gnc-log-replay.cpp] fix incorrect guid dump Add some Boost library requirements needed by libgnucash-guile to CMakeLists.txt so that missing feature will fail at configure time. Use Compile-time Regular Expressions instead of std::regex in gnc-filepath-utils.cpp and instead of boost::regex in the CSV importer, with the CTRE v3.11.1 header added to borrowed [gnc-filepath-utils.cpp] null check char* arguments Add ChartJS licenses. Removed AEX from list of commodities. euronext.com is now using JS based anti-webscraping. [report-core] always offer options summary in reports. This is useful to debug reports. The Add options summary option is removed because it's no longer optional. Remove remaining obsolete IMContext from sheet Fix blurry text in HiDPI offscreen-rendered widgets Add port field to database connection dialog: The convention of appending the port number after the host isn't obvious. When editing a split in the register treat the account as being changed only if it isn't the one selected before editing instead of if the user performed an edit Return immediately from qof_book_destroy if hash_of_collections is null. If qof_book_destroy is called on a QofBook* freshly created with qof_book_new (usually because it was used to create a session that now must be destroyed) it would try to empty the non-existent hash tables, crashing. Clean up Flathub metadata to solve warnings at flatpak build time. Be consistent in naming GncPluginPage and GncPluginPageRegister HTML: Remove unimplemented function declarations. [gnc-html.cpp] remove unused buggy string conversion functions Convert libgnc-html to C++ Apply -Wall -Werr -Wmissing-prototypes to C++ compilation on Windows and fix the resulting errors. New and Updated Translations: Arabic, Croatian, Danish, Dutch, German, Finnish, Hungarian, Korean, Norwegian-Bokmal, Spanish Download: GnuCash 5.16 | 176.0 MB (Open Source) Links: GnuCash Home page | Other Operating Systems | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Microsoft finally launches WSL Containers in public preview by David Uzondu Microsoft has announced that WSL containers, a feature that allows developers to run Linux containers natively inside Windows without the need for Docker Desktop, is now available in public preview several weeks after Microsoft previewed it at Build 2026. To use the new container feature, you first have to install the latest pre-release version of the Windows Subsystem for Linux by running a quick update command in your terminal: wsl --update --pre-release After installing, you'd get access to the new Linux container CLI (wslc.exe) and the programmable API. Microsoft said that the CLI has a "familiar format" that matches the toolsets developers already use every day. If you know standard Docker commands, your muscle memory will translate directly to wslc.exe, which even features a built-in alias called container.exe. You can quickly run a full Ubuntu KDE desktop container by exposing ports, or pass your graphics card straight into a machine learning environment to run PyTorch workloads. Passing the --gpus all flag inside the run command instantly links your hardware. Image via Microsoft As for the API, developers can now embed Linux container operations directly inside native Windows applications without exposing the command line to users. The team integrated the API directly into MSBuild and CMake, so developers can define container steps directly in project files. Apart from bringing the CLI and API into public preview, Microsoft also said that it's working on a new default file system called virtiofs to speed up file transfer rates between Windows and Linux. Microsoft also introduced an experimental networking mode named consomme, which resolves compatibility issues with corporate VPNs by routing Linux network traffic straight through Windows. One thing to note about WSL containers is that they don't run in your standard WSL distributions; instead, every application and CLI session spawns its own lightweight Hyper-V utility VM in the background. This basically reduces the chances of one app snooping on the container of another app.
  • Recent Achievements

    • Reacting Well
      NovaEdgeX earned a badge
      Reacting Well
    • Week One Done
      NovaEdgeX earned a badge
      Week One Done
    • One Year In
      BA the Curmudgeon earned a badge
      One Year In
    • Conversation Starter
      rosiecharles earned a badge
      Conversation Starter
    • First Post
      KMilenkoski1202 earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      533
    2. 2
      +Edouard
      269
    3. 3
      PsYcHoKiLLa
      150
    4. 4
      Steven P.
      98
    5. 5
      macoman
      66
  • Tell a friend

    Love Neowin? Tell a friend!