1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Command to check Energy and Timer Resolution issues

Discussion in 'Operating Systems' started by X7007, Apr 13, 2019.

  1. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    Hi,

    Please run from the CMD this command.

    it will output a file with Errors,Warnings,Informational details about the energy consuming devices and some issues with energy settings


    What I most interested is about the Timer Resolution

    Warnings
    Platform Timer Resolution Platform Timer Resolution
    The default platform timer resolution is 15.6ms (15625000ns) and should be used whenever the system is idle. If the timer resolution is increased, processor power management technologies may not be effective. The timer resolution may be increased due to multimedia playback or graphical animations.
    Current Timer Resolution (100ns units) 20000
    Maximum Timer Period (100ns units) 156250


    Platform Timer Resolution:Outstanding Kernel Timer Request
    A kernel component or device driver has requested a timer resolution smaller than the platform maximum timer resolution.
    Requested Period 20000
    Request Count 5


    But please upload the file somewhere so I can see what is the different between.

    C:\>powercfg -energy duration 5
    Enabling tracing for 5 seconds...
    Observing system behavior...
    Analyzing trace data...
    Analysis complete.

    Energy efficiency problems were found.

    12 Errors
    3 Warnings
    70 Informational

    See C:\energy-report.html for more details.




    Indication of issue for example :

    https://www.tenforums.com/general-support/111406-platform-timer-resolution.html

    More information :

    http://www.windowstimestamp.com/description





    Important !!:

    The values of ActualResolution are accompanied by small offsets which may vary from boot to boot but they stay constant during operation. This clearly indicates that the timer periods are calibrated during boot time. Consequently, system time updates are done a those periods with a mean progress of ActualResolution.

    The calibration of the performance counter frequency during boot is described in section 2.4. The tiny deviations seen in the list above are a result of the calibration accuracy. Again: The TSC frequency is calibrated against HPET timer periods. This is to be done in a reasonable short time to not extend the boot time too much. The remaining deviations are small but noticeable (e.g. 1.2 μs in 9,0012 for a 9 ms period corresponds to 840ppm!).




    More information :

    https://docs.microsoft.com/en-gb/windows/desktop/DxTechArts/game-timing-and-multicore-processors

    More Information :

    https://docs.microsoft.com/en-gb/windows/desktop/SysInfo/acquiring-high-resolution-time-stamps
     
    Last edited: Apr 13, 2019
  2. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    You want to investigate why there is a timer resolution warning?
     
  3. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    yes , why devices are trying to get weird Timer Resolution that doesn't exist.

    And why my computer doesn't reach 15.625 ms anymore . It just stuck on 0.9989 or 1.99xx something

    Example of how much it affect , not mine, random guys on youtube , but the results are clear

     
  4. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    It seems that my PCIE Eclaro sound card driver when it is enabled it limit to max 1.9989 or something and the minimum is 0.9989 , I am trying to understand why it's 0.9989 and not 0.5
     

  5. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    You interpret that video wrong.
    1. After he sets maximum timer resolution - 0.5 ms - his test shows improvement.
    2. 15.6 ms is the lowest timer resolution (and default one).

    One warning in powercfg trace is about extra energy draw when timer resolution is set to lower values than default 15.6 ms.
    And the warning "A kernel component or device driver has requested a timer resolution smaller than the platform maximum timer resolution." is strange because "Current Timer Resolution (100ns units) 20000" means 2 ms. I always saw 0.5 ms as a maximum timer resolution and that is 4 times bigger resolution than 2 ms. What values you see in TimerTool.exe window - values labelled with "Max" and "Min"? That pair shows actual minimum and maximum.

    PS That`s the point of correct/precise usage of words - lower and higher. You see, the number "0.5" is lower than the number "15.6", but the timer resolution of "0.5" is higher than the resolution of "15.6" - timer fires each 0.5 ms instead of each 15.6 ms.
     
    Last edited: Apr 13, 2019
  6. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    Because it is "2 ms" and "1 ms" in reality. That API for the timer resolution operates in units of "100 ns". To convert that to milliseconds program should multiply and divide - that division implies floating point operations. When program prints the floating point numbers it specifies the number of digits after the decimal point ".". If programmer would specify 1 number after the decimal point program would print "2.0" and "1.0" because of rounding.
     
  7. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    I meant 0.5 is maximum performance which what I want , because mine only reach 0.9989 and not 0.5 .

    I want it to idle 15.625 when I am not doing anything .

    *It seems when playing a VIDEO file it goes to 0.4988 which is like 0.5 just without HPET .

    Also another information

    https://www.reddit.com/r/Amd/comments/9lutad/after_windows_10_1809_october_update_unknown_timer/




    It seems even with 16GB u need to do that

    https://forums.hardwarezone.com.sg/hardware-clinic-2/windows-10-1809-gaming-tweak-5985014.html


    The problem is when gaming , I can see games doesn't use 0.5 which will cause issue, or randomly change timing which is like in the first video I sent he shows his performance low when the timing is not 0.5 . so that's the whole reason I am asking, what is everyone Timer Resolution ?


    This software also display the Timer Resolution so I will use it only .

    [​IMG]

    You can see it's 0.4988 ms that's when playing a Video with Potplayer


    This is playing a FLAC file with Potplayer

    [​IMG]
     
    Last edited: Apr 13, 2019
  8. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
  9. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    There is no automatic increase or decrease for timer resolution. OS sets it to default value of 15.6 ms on boot. Any 3rd party software - drivers or apps - can request lower value (say 1 ms), and while that driver or app is running the requested value is maintained. When driver or app is stopped the resolution is reverted to the value that was before the request. In each moment the timer resolution is maintained on the lowest value among all requested ones. (Which means your request for 4 ms will not raise the value from 1 ms requested by someone else.) If no requests were issued then the default 15.6 ms is maintained.

    You can use any timer resolution tool available in the wild to request the lowest possible value. I implemented such tool in the form of system service without UI (because to do the job it only needs to request the lowest possible value and then just to sit there doing nothing).

    PS As for 1809 and 1 ms for games may be game mode tools request that value when they recognise the game is launched.
     
  10. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    Yes , indeed , but it wasn't like that before . Even with all devices it was idling and goes to 0.5 just fine when needed. I am trying to follow of what causing this as I am trying to find other issues for example lag input and such.
     

  11. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    Influence of system timer resolution is overestimated. Only when game is badly coded (with usage of timers provided by Win API) it depends on system timer resolution. I only met such game one time for all these years of Win7 => Win8 => Win10.

    Do you mean that when you manually set 0.5 ms in any timer tool it refuses to do that?
     
  12. X7007

    X7007 Maha Guru

    Messages:
    1,442
    Likes Received:
    9
    GPU:
    Inno3D 1080GTX
    if I choose 0.5 it works, but it doesn't go automatically for the games . only for videos .
     
  13. mbk1969

    mbk1969 Ancient Guru

    Messages:
    7,872
    Likes Received:
    4,509
    GPU:
    GeForce GTX 1070
    That`s because application you use for videos (player or browser) requests it.

    PS Btw, powercfg command you used shows the process requested timer resolution (at least when it is not a kernel process).
     
    Last edited: Apr 14, 2019

Share This Page