Another look at HPET High Precision Event Timer

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

  1. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,631
    Likes Received:
    14
    GPU:
    MSi GTX980 GAMING 1531mhz
    so whats the benefit of having 14mhz instead of stock 3.4mhz ?
     
  2. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    Less CPU interrupts maybe.
     
  3. mbk1969

    mbk1969 Ancient Guru

    Messages:
    11,511
    Likes Received:
    9,256
    GPU:
    GF RTX 2070 Super
    Doubt it because HPET is external device and needs interaction through port or memory mapped region which leads to additional interrupts (I think).
     
  4. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    HPET isn't external it's embedded in the SB. .

    However it does have a connection with MMIO (I don't know exactly what) which is probably why you think that.

    Update: I meant to add that every time counter hits 0 it causes an interrupt... I think. :p (could be wrong too).
     
    Last edited: Sep 6, 2013

  5. StealBalls

    StealBalls Banned

    Messages:
    649
    Likes Received:
    0
    GPU:
    MSI 280x CrossFire
    So just popping back in after a while, seems we are still happy with this...

    Originally Posted by Vbs View Post
    In the end, my recommendation would be:
    1) Enable HPET in the bios
    2) Open a command prompt (admin) and type bcdedit /deletevalue useplatformclock


    ???

    Just to point out when I do that it says element not found - which is OK right?
     
  6. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,272
    Likes Received:
    1,993
    GPU:
    Zotac GTX980Ti OC
    Yes, but now i see i can have 1000us in 1st, i remember doing some stuff and it got down to max 30us

    [​IMG]

    atm i have win8 "platformclock deletevalue" so its at 3.4mhz, no dynamictick, no platfromtick

    i had it like so here (not my pic), but it didnt feel so smooth in BF3 and RIFT..
    [​IMG]

    use plaformclock on, rest off felt the smoothest.


    EDIT: PC clock looks like so, i guess its the best scenario..
    [​IMG]

    but why that kernel latency at 1000us?
     
    Last edited: Sep 6, 2013
  7. mbk1969

    mbk1969 Ancient Guru

    Messages:
    11,511
    Likes Received:
    9,256
    GPU:
    GF RTX 2070 Super
    It is external to CPU (comparing to TSC). Even if MMIO interaction doesn`t involve interrupt its execution time is much more big...


    HPET has two modes:
    - continuous countdown (with overlap at 0);
    - countdown from required value to 0 with interrupt.
    I don`t know it exactly but suspect that second mode not used in QueryPerformanceCounter function. If developer wants to measure time interval he places code between two calls of QueryPerformanceCounter. And for that usage scenario there is no need for mode with interrupt. All that QPC function needs (and returns) is current counter value.
     
    Last edited: Sep 6, 2013
  8. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    Well it would depend on the application I guess...


    @TJ - why is PAE disabled in your boot loader?
     
  9. mbk1969

    mbk1969 Ancient Guru

    Messages:
    11,511
    Likes Received:
    9,256
    GPU:
    GF RTX 2070 Super
    Application can use HPET directly in any possible way. But when app calls QueryPerformanceCounter and that function uses HPET, there is no need for mode with interrupt.
     
  10. Cyberdyne

    Cyberdyne Ancient Guru

    Messages:
    3,582
    Likes Received:
    302
    GPU:
    2080 Ti FTW3 Ultra
    I think PAE is pointless on Windows vista/7/8 64-bit versions. Should only be useful on 32-bit OS's.
     

  11. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    All apps can't use HPET, some older apps have to use TSC because HPET wasn't around when they were developed, such as apps designed to run on single core processors.
     
    Last edited: Sep 7, 2013
  12. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    Yeah but it's odd that someone would go out of their way to disable it, there's no reason to....
     
  13. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,272
    Likes Received:
    1,993
    GPU:
    Zotac GTX980Ti OC
    That 2nd screen was an example of low kernel latency, I think it got activated wit no dynamictick, not sure though..


    I have it like so
    [​IMG]
     
    Last edited: Sep 7, 2013
  14. BenYeeHua

    BenYeeHua Ancient Guru

    Messages:
    1,515
    Likes Received:
    0
    GPU:
    Asus 650M D3
    TR;DR:Go into Safe mode, if it is still showing, then it is Hardware issue, if it is gone, then it is driver issue.

    It can be many reason, I also saw one guy with a HDD causing stutter and LatencyMon also showing kernel latency higher, but without showing any driver that high.

    You might want to check for it in safe mode first, if safe mode don't has this issue, then it is some driver causing it, and somehow the LatencyMon don't showing it.

    Some "Microsoft" driver will causing it too, just install the driver for it.
     
  15. Pill Monster

    Pill Monster Banned

    Messages:
    25,214
    Likes Received:
    9
    GPU:
    7950 Vapor-X 1100/1500
    Some FYI: you guys who like to mess around with bcdedit a lot and get sick of using the command prompt should check out VisualBCD.

    It's a GUI bootloader for and comes with over 9000 different switches and other cool stuff. You can find the definitions on MSDN.

    Originally developed for W7 the latest version now supports W8 too. It's pretty cool.

    Don't thank me, thank the dev. :p



    EDit some screenshots:

    [​IMG][​IMG]
     
    Last edited: Sep 7, 2013

  16. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,272
    Likes Received:
    1,993
    GPU:
    Zotac GTX980Ti OC
    Ok its "bcdedit /set disabledynamictick yes" that makes it ~ avg 30-38us or so..
    [​IMG]

    600us spike is sanity check
     
  17. tsunami231

    tsunami231 Ancient Guru

    Messages:
    12,340
    Likes Received:
    992
    GPU:
    EVGA 1070Ti Black
    Yah all this info and settings and recommendations need to be consolidated into first page/post and sticky so it isnt asked over and over
     
  18. BenYeeHua

    BenYeeHua Ancient Guru

    Messages:
    1,515
    Likes Received:
    0
    GPU:
    Asus 650M D3
    I think I know what's issues you has.
    You are using LatencyMon Version 4.0x, while the newest version 5.0 has using "Interrupt to user process latency" as a workaround for dynamic tick, not "kernel timer latency" to showing the kernel timer latency.

    As dynamic tick causing the kernel timer latency to showing much higher, that why after you disable dynamic tick it will be "fixed".:)
    ---
    But yes, disable dynamic tick will help reduce 50-100 us too.
    And lol for this forum don't support some unicode. ;)
     
    Last edited: Sep 8, 2013
  19. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,272
    Likes Received:
    1,993
    GPU:
    Zotac GTX980Ti OC
    Yeah its v 4.02.. Thanks for the info :)
     
  20. Francko1979

    Francko1979 Member

    Messages:
    44
    Likes Received:
    0
    GPU:
    EVGA GTX 980Ti SC SLIĀ“ed
    Guys, any help with be greatly appreciated.
    Everytime I enable HPET on my BIOS, I get nvldkkm (sorry if I misspelled it) 7E BSOD at start up, but only when SLI is enabled.
    If I disable SLI, HPET enabled, all good.
    HPET enabled, i try to enable SLI, instant BSOD.
     

Share This Page