Another look at HPET High Precision Event Timer

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by Bukkake, Sep 18, 2012.

  1. maco07

    maco07 Active Member

    Messages:
    96
    Likes Received:
    0
    GPU:
    7970 3GB Boost
    Sorrry, I missunderstanded you. Did you changed anything referred to HPET? weird.
     
  2. mbk1969

    mbk1969 Ancient Guru

    Messages:
    9,359
    Likes Received:
    6,271
    GPU:
    GF RTX 2070 Super
    It is not weird. Some process in OS called that API function which set timer minimum resolution.
     
  3. Major Melchett

    Major Melchett Ancient Guru

    Messages:
    2,456
    Likes Received:
    0
    GPU:
    R9 280X @ 1100/1500
    Not a thing, just went to run the tool today to play some Crysis 3 and noticed the difference.

    Maybe it was just my eyes (or I'm going mad), but I swear it was 1.000ms.

    Ahh, that was probably it - I'm not going mad after all :banana:
     
  4. mbk1969

    mbk1969 Ancient Guru

    Messages:
    9,359
    Likes Received:
    6,271
    GPU:
    GF RTX 2070 Super
    If you guys want I can try to implement system service which will call that timer resolution function at OS start and maintain it (resolution) in all session span.
     

  5. NeoandGeo

    NeoandGeo Master Guru

    Messages:
    752
    Likes Received:
    3
    GPU:
    Geforce GTX 970 @1420
    I recently tried this again on a new install, and it still didn't work out for me. I used the bcdedit command useplatformclock true, and then used the command /deletevalue to undo it. For some reason after this my processor will not clock down from 4.6 when it is idle. I double checked my BIOS settings and all the power saving features for the processor are set to enabled instead of auto, but I still can't downlock for some reason.

    CPU-Z shows a constant 4.6ghz, while Windows task manager shows fluctuations from 3.4-4.6 while idle but never the proper 1.6 when completely idle.

    Does it have anything to do with this, and is there a way to get to a pure Windows default value for HPET?
     
  6. Vbs

    Vbs Master Guru

    Messages:
    291
    Likes Received:
    0
    GPU:
    Asus Strix 970, 1506/7806
    Anyone using a CPU that has an invariant TSC (Intel Nahalem+ or AMD Bulldozer+) is handicapping themselves by forcing HPET, as the invariant TSC counts at the standard CPU frequency independently of power state or overclocking.

    For my i7-2600K, that's 3400MHz of precision vs 14.3MHz of the HPET.
     
  7. Xtreme512

    Xtreme512 Master Guru

    Messages:
    675
    Likes Received:
    8
    GPU:
    GTX1060 6GB
    it dynamically changes it if you dont set a value.. so no problem at all ;) no worries :)
     
  8. mbk1969

    mbk1969 Ancient Guru

    Messages:
    9,359
    Likes Received:
    6,271
    GPU:
    GF RTX 2070 Super
    Try to execute bcdedit /set useplatformclock false

    And you need to reboot after that...

    And Windows has its own power settings. May be they were changed/shifted/triggerred...
     
    Last edited: Feb 26, 2013
  9. mutate44

    mutate44 Member Guru

    Messages:
    104
    Likes Received:
    0
    GPU:
    GTX 680 2GB WF 1293 Boost
    Hey guys just bought Timer Resolution 2.0 how do I set it up in the commandline to hide and max? thanks
     
  10. Prophet

    Prophet Master Guru

    Messages:
    802
    Likes Received:
    7
    GPU:
    Msi 680 Gtx Twin Frozr
    C:\TimerResolution20.exe -max -hide its in the docs. Read them.
     

  11. mutate44

    mutate44 Member Guru

    Messages:
    104
    Likes Received:
    0
    GPU:
    GTX 680 2GB WF 1293 Boost
    Thanks love this tool BF3 seems a little smoother now! and it's nice not having it open lol:)
     
  12. dsbig

    dsbig Ancient Guru

    Messages:
    4,037
    Likes Received:
    36
    GPU:
    EVGA RTX 2070
    with hpet disabled, latency bounces around 15-70us

    with it enabled it stays around 70us

    my hauppauge usb 950q tuner causes it to randomly go to 200-300us for a split second causing audio stutter.

    drivers are up to date.
     
  13. tsunami231

    tsunami231 Ancient Guru

    Messages:
    10,525
    Likes Received:
    580
    GPU:
    EVGA 1070Ti Black
    That is debatable. Hpet on in Windows = NO latency spikes for me but QueryPerfomanceCounter is 750ns

    Hpet off in Windows = 1000+us Latency spikes for me, but QueryPerformanceCounter is 7.5ns And I see no differnece on how my games play.

    No Latency Spikes is preferable. Every computer is different what good for one is not good for another This has be proven time and time again in the many topics regarding Hpet, and any cpu that supports iTSC uses it regardless.

    Go for it some of us would service to control this.
     
    Last edited: Feb 27, 2013
  14. mbk1969

    mbk1969 Ancient Guru

    Messages:
    9,359
    Likes Received:
    6,271
    GPU:
    GF RTX 2070 Super

    I implemented the service. Now you tell me the preferrable way of binary executable file sharing.
     
    Last edited: Feb 27, 2013
  15. pipes

    pipes Member Guru

    Messages:
    171
    Likes Received:
    0
    GPU:
    gtx 1080 ti oc lab
    this is my results with hpet on and off

    [​IMG]

    [​IMG]
     

  16. shm0

    shm0 Member

    Messages:
    41
    Likes Received:
    3
    GPU:
    EVGA GTX 1060 SC
    hey guys.
    im reading here for some time now and just decided to create an account.

    you dont have to pay 10 bucks to set your timer resolution.
    here is a simple c# code which sets the res to 0.5 every 60secs.


    Code:
    using System;
    using System.Runtime.InteropServices;
    
    namespace SetTimerRes
    {
        class TimerRes
        {
    
            [DllImport("ntdll.dll", EntryPoint = "NtSetTimerResolution")]
            public static extern void NtSetTimerResolution(uint DesiredResolution, bool SetResolution, ref uint CurrentResolution);
    
    
            static void Main(string[] args)
            {
                uint DesiredResolution = 9000;
                bool SetResolution = true;
                uint CurrentResolution = 0;
    
                while (true)
                {
                    NtSetTimerResolution(DesiredResolution, SetResolution, ref CurrentResolution);
                    System.Threading.Thread.Sleep(6000);
                }
            }
        }
    }
    
    if you want i can upload precompiled binary which has no window. just runs in the background.
    ready to put in your autostart folder.
     
  17. Mr_ALLroy

    Mr_ALLroy Ancient Guru

    Messages:
    1,989
    Likes Received:
    8
    GPU:
    MSI GTX1080 Ti Gaming X
    Sure, upload. I'd like to try it.
     
    Last edited: Feb 27, 2013
  18. shm0

    shm0 Member

    Messages:
    41
    Likes Received:
    3
    GPU:
    EVGA GTX 1060 SC
  19. harkinsteven

    harkinsteven Ancient Guru

    Messages:
    2,916
    Likes Received:
    96
    GPU:
    RTX 2080 ti
    Pipes you have to hit maximum to get the benefit.
     
  20. Von Dach

    Von Dach Master Guru

    Messages:
    623
    Likes Received:
    1
    GPU:
    NV560Ti @900/2394 ATI4890
    Interesting, but because you're new here (trust), can you tell us how to compile it instead?
    So we could feel safe from virus.
    (Well I will probably have googled about compiling in the meanwhile lol but thank you, nice input)

    Also you can just put Timer Resolution 1.2 (free) into your Startup folder, still have to click it and run it in background but it's only have to be done one time after boot.
    [​IMG]
     
    Last edited: Feb 27, 2013

Share This Page