Skip to main content
cirdog
New Member
February 25, 2017
Solved

Windows' CPU Timer Resolution at "lowest" after VPN connected?

  • February 25, 2017
  • 1 reply
  • 5466 views

Hi Everyone,

 

I'm here to seek your kind help in understanding what's going on between "VPN connections" and "Windows' CPU Timer Resolution", and especially when it's connecting via FortiClient (latest, 5.4.2.0860).

 

I recently noticed that whenever I'm connected to VPN, my notebook battery seems to be draining much faster than when I'm not. Then after some googling I've come up with a possible cause related to "CPU Timer Resolution" of Windows (I'm on Win10 - 1607 - 14393.693) 

 

ClockRes (a utility to display the current Timer Resolution)

https://technet.microsoft...nternals/bb897568.aspx

 

When VPN is connected via FortiClient in my case, CPU Timer Resolution would *persistently* go to ~5ms (fine), as oppose to the disconnected state at ~15ms (normal idle) (see attached screenshot).

 

To my limited knowledge, unnecessarily fine/short timer resolution would drain battery, just like what Chrome did some versions ago:

 

https://arstechnica.com/g...raining-bug-in-chrome/

https://bugs.chromium.org...ssues/detail?id=153139

 

I wonder if a Timer Resolution this fine/short (~5ms) is necessary for any generic VPN connection, or is it specifically set by FortiClient? Or maybe it's just a bug of FortiClient or just of Windows or the Network Card driver?

 

I've just tested with Chrome (latest) that they have fixed their bug and now it won't shorten the timer resolution unnecessarily and now battery doesn't drain as quickly as before.

 

This really bugs me since my work requires me connected to VPN most of the time. If a fine timer is necessary for any VPN connection then I might need to search for another solution on the OS level. But if it's caused by FortiClient's setting then maybe I could report a bug or consult the dev team for some special workaround?

 

Thanks very much for your insight.

 

Regards,

Godric

    Best answer by ede_pfau

    The only connection between FC and the timer device could be it's use of 2-factor-authorization via FortiToken. The seed heavily depends on synchronized clocks between the client and the seed server. Maybe FC will switch the internal Windows timer resolution because of this, and the developers didn't see any side effect coming. Like higher power consumption.

    I'd open a case with TAC and ask for a workaround/patch release. Maybe they will provide a hidden parameter for this in a later release. I doubt they've heard of this side effect yet.

    1 reply

    ede_pfau
    SuperUser
    ede_pfauAnswer
    SuperUser
    February 26, 2017

    The only connection between FC and the timer device could be it's use of 2-factor-authorization via FortiToken. The seed heavily depends on synchronized clocks between the client and the seed server. Maybe FC will switch the internal Windows timer resolution because of this, and the developers didn't see any side effect coming. Like higher power consumption.

    I'd open a case with TAC and ask for a workaround/patch release. Maybe they will provide a hidden parameter for this in a later release. I doubt they've heard of this side effect yet.

    cirdog
    cirdogAuthor
    New Member
    February 27, 2017

    Thanks Ede for your prompt response.

     

    Just another supplemental info (screenshot) that under my case I'm ONLY using the VPN module and nothing else. I haven't touched on the 2-factor authentication and haven't seen it active as a module or within the setting panels too.

     

    And a further layman point is that I supposed that the "Finer Timer" is only needed while FC is waiting for user's token input, then maybe FC can only set a finer timer during this waiting period, then set it back to normal when it's not needed.

     

    I'm sure the dev knows how to fix it & I shall patiently wait for the update.

     

    Thanks again for your kind help.