Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
440 connectés 

  FORUM HardWare.fr
  Windows & Software
  Tutoriels

  [Tuto] Activer le HPET sous WINDOWS = Stabilité, gain en jeux, ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Tuto] Activer le HPET sous WINDOWS = Stabilité, gain en jeux, ...

n°3190319
AmigaOnly
Posté le 07-08-2015 à 18:32:09  profilanswer
 

Pour améliorer la latence sous windows (cela peut stabiliser un PC, on peut noter un gain de FPS notamment en SLI, éviter le micro stuttering, avoir un gain de 10% sous directx, ...) mais avec un timer hardware

 

Aller dans le BIOS

 


Mettre en "Enable" HPET (32 or 64 Bits ) (ca l'est souvent par défaut sauf sous les carte mère d'il y a 5 ans et plus)
Sur certaines cartes mères, le HPET est en mode "forcé" et n'apparait pas dans le bios car intégré dans la puce southbridge

 


MAIS dans windows le HPET n'est pas activé :

 


 I) Donc il faut passer par la console "cmd" en mode admin (sinon ca ne fonctionnera pas) et taper

 


bcdedit /set useplatformclock true

 

Pour ceux qui veulent voir les lignes de commandes au complet (win 7, Win 8 et > ... Pas testé sous Win 10 cependant)

 

https://msdn.microsoft.com/en-us/li [...] 85%29.aspx

 

Sous Windows 8 et > il existe en plus  (1) :

 

bcdedit /set tscsyncpolicy Enhanced
bcdedit /set disabledynamictick yes

 


Pour revenir à un état antérieur :

 

bcdedit /deletevalue useplatformclock
bcdedit /deletevalue tscsyncpolicy
bcdedit /deletevalue disabledynamictick

 

Et pour voir si c'est bien pris en compte :

 

bcdedit /enum

 


(1) Pour windows 8  il est indiqué : "This option should only be used for debugging."

 

Il y a très peu d'info sur cette fonction : https://www.google.com/#filter=0&q= [...] rosoft.com

 

Idem pour   Disabledynamictick

 

https://www.google.com/#q=disabledy [...] rosoft.com

 

Tout ce que l'on sait c'est que cela a permis à certains de résoudre des pbs de freezes (notamment dans les jeux)

 

Issue: http://withinwindows.com/within-wi [...] ing-issues
Fixed: http://withinwindows.com/within-wi [...] ing-issues

 


http://forums.guru3d.com/showthread.php?t=368604

 

__________________________________________________

 

II)  Ensuite il faut rebooter (aucun risque de crash ou BSOD, ce qui est normal dans l'absolu. Je l'ai fais tester sur une douzaine de carte mère différentes pour résoudre notamment des pbs liés au plantage de carte graphiques avec les pilotes )

 


Pour tester avant et après

 

http://www.mediafire.com/download/ [...] er_1.1.zip

 


Pour avoir une idée de ce que cela donne :

 

http://nsa38.casimages.com/img/2015/08/07/150807074042457565.jpg

 

Et sans HPET

 

http://nsa38.casimages.com/img/2015/08/07/150807074319966042.jpg

 

Avec

 

http://nsa37.casimages.com/img/2015/08/07/150807074355561880.jpg

  

Et sous wintimer sous les différents timers voila ce que cela donne

 

TSC+LAPICs (useplatformclock false) = 2.76MHz *
LAPICs (useplatformclock true) = 3.5Mhz **
TSC+HPET (useplatformclock false) = 3.8Mhz ***
HPET (useplatformclock true)14.3MHz ****

  

Perso j'avais acheté ce programme

 

http://www.lucashale.com/timer-resolution/

 

On peut noter l'importance des timers sur certains programmes/pilotes clés :

 

http://nsa38.casimages.com/img/2015/08/07/mini_150807074622819485.jpg

 

http://nsa38.casimages.com/img/2015/08/07/mini_150807074830817507.jpg

 


Sinon pour tester :

 

http://www.resplendence.com/latencymon

 

http://www.thesycon.de/eng/latency_check.shtml

 


Pour résumer du lien http://forums.guru3d.com/showthrea [...] light=hpet  

 

"The TSC frequency is calibrated against HPET periods to finally get proper timekeeping."
(...)
It means that TSC calibration (basically how many ticks of CPU TSC "invariant" clock mean how many time units in nanoseconds) is calibrated using known period of HPET (since it is clocked at 14mhz+, resolution is obviuosly great enough). So Windows 8.1 is actually making use of HPET for initial calibration, and if it is not available (like disabled in BIOS?), it will fallback to less accurate source of timing ( LAPIC or PIT).

 

"I'm pretty sure that the MM timers rely on the existence of HPET and/or LAPIC to work reliably. And I readily belive that early implementations of the hardware were broken and terrible -"

 

Sadly "Invariant TSC" and HPET are not the same functionally. And disabling HPET is very stupid idea in general.

 

"HPET is programmable timer with plenty of functions. For example on modern operating systems with so called tickless mode, OS will look at it's timer, job etc queues and will set HPET to fire exactly when it is needed (for example 66ms later, when some of your app demands wakeup in some system call) and not periodically (every 10 or 15 ms needlessly burning CPU cycles on doing nothing)."

 

"Modern systems have HPET and make great use of it, stuff like high precision wakeups needed in modern media players to drive precise audio/video timings and still sleeping when processing is not required are pretty much based on having HPET in the system.

 

Invariant TSC is cool feature, engineering marvel from Intel in its day. But having same "clock" tick value across all CPU cores in the system is good for time keeping and measurement and sadly can't magically bring back CPU from sleep.

 

So it boils down to the following distinction between clock source and clock event devices. HPET and invariant TSC are both clock sources, but only HPET is (actually high resolution) clock event device."
"

 

Having an HPET (or even better, an invariant TSC [Timestamp counter])but this is not the same function, increases that frequency from the millisecond range to the microsecond range. TSC and HPET tend to be less susceptible to thermal drift too, meaning more consistent interrupts.

 

_______________________________________________________

 


Il est amusant de lire ce que dit Intel à ce sujet

 

https://software.intel.com/en-us/forums/topic/306380

 

Et ce que IBM fait avec ses serveurs

 

https://www-947.ibm.com/support/ent [...] gr-5084072

 


A lire également (meme si ca date car les discussions à ce sujet sont pauvres)

 

http://forums.guru3d.com/showthrea [...] light=hpet

 

_______________________

 

Liens et documentations :

 

https://en.wikipedia.org/wiki/High_ [...] vent_Timer
https://msdn.microsoft.com/en-US/li [...] e/dn550976
https://en.wikipedia.org/wiki/Time_Stamp_Counter
https://www-ssl.intel.com/content/w [...] 25462.html

 

Autre discussion

 

http://forums.steampowered.com/for [...] st28807232


Message édité par AmigaOnly le 09-08-2015 à 11:51:49

---------------
Only Amiga is... Heu.. was possible :-)
mood
Publicité
Posté le 07-08-2015 à 18:32:09  profilanswer
 

n°3194711
BGentle
Weaveworld
Posté le 19-08-2015 à 09:53:21  profilanswer
 

Apparemment pour Windows 10, il faudrait désactiver le HPET dans le bios pour éviter qu'il ne charge le driver. Le HPET est inutile sous W10 car il utilise une autre méthode "plus moderne" : CPU's TSC...  
je suis pas expert, je ne sais pas si la source est fiable :
"now Windows 10 use CPU's TSC instead of HPET, which is a more modern and optimized method of controlling timings"
 
http://www.overclock.net/t/1567745 [...] -latencies
 
 
 

n°3195698
impopo
ɛ̃.pɔ.pɔ
Posté le 22-08-2015 à 16:46:01  profilanswer
 

Bravo pour ton post  
j'suis ne pas vraiment d'accord pour l’intérêt de cette pratique pour les jeux en lignes  
La désactivation avec l'utilisation de timer augmente le temps de latence mais donne une meilleur sensation de la souris mais il n'a pas vraiment de consensus à propos d'HPET

n°3200094
AmigaOnly
Posté le 14-09-2015 à 13:31:52  profilanswer
 

impopo a écrit :

Bravo pour ton post
j'suis ne pas vraiment d'accord pour l’intérêt de cette pratique pour les jeux en lignes
La désactivation avec l'utilisation de timer augmente le temps de latence mais donne une meilleur sensation de la souris mais il n'a pas vraiment de consensus à propos d'HPET

 

En fait le problème du HPET c'est qu'il faut le tester

 

Sur le forum Geforce il y a 2 ans, j'ai pu avoir pas mal de retours dont avec l'auteur de DDU,  et le constat est toujours le meme

 

Dépendant du matériel (carte mère, processeur/chipset, etc...)
Dépendant de l'OS
Dépendant de la configuration hardware (SLI ou pas etc)

 

Et cela n'apporte pas un gain positif GLOBAL
Il a meme été vu des effets contraires mais pour les 3/4 des gens il y avait un gain pour notamment les jeux en ligne en FPS, et pour d'autres cela a réglé le problème de micro stuttering (la cause étant les TSC+LAPICs), et/ou le problème de décalage sonore

 

Pour certains cela a réglé leur problèmes de crashes, TDR, etc  avec les carte et pilotes nvidia pour d'autres pas

 

Sous windows 10 il semblerait que l'implémentation ne soit que partielle via le pilote


Message édité par AmigaOnly le 14-09-2015 à 13:53:47

---------------
Only Amiga is... Heu.. was possible :-)
n°3200095
Ralph-
★ You'll hate me. ★
Posté le 14-09-2015 à 13:57:01  profilanswer
 

BGentle a écrit :

Apparemment pour Windows 10, il faudrait désactiver le HPET dans le bios pour éviter qu'il ne charge le driver. Le HPET est inutile sous W10 car il utilise une autre méthode "plus moderne" : CPU's TSC...  
je suis pas expert, je ne sais pas si la source est fiable :
"now Windows 10 use CPU's TSC instead of HPET, which is a more modern and optimized method of controlling timings"
 
http://www.overclock.net/t/1567745 [...] -latencies


 
Le TSC est tout sauf moderne, il a plus de 20 ans, et n'est pas du tout précis dans un environnement multi-core et deep-sleep, etc. etc., le HPET est de 2005 pour palier aux nombreux manques du TSC justement.

n°3249723
major95
Blues on the Bayou
Posté le 27-09-2016 à 22:45:09  profilanswer
 

De toute façon, ça ne changera pas grand-chose :
 

Citation :

Every application that is not written by a retarded/drunken monkey will use QPC\QPF for high performance timing. Before QPF\QPC developers used timeGetTime for a decent real-time timing.
 
QPF\QPC will use the best timer available on your system, where "best" means a timer with resolution, accuracy and latency, usually about <10us.  
It could be a "pure" hardware timer like HPET or some sort of synthetic timers obtained by some hardware atomic measurements and handled in some way by the OS to avoid that sort of issues related to TSC (if you didn't understand, every developer that directly use TSC today is a drunken retard monkey and benchmarks that NEED HPET to be enable are written by that sort of monkeys).
 
If your machine do not support QPF\QPC it will not support HPET, so you cannot enable it. And that's a (relatively) very old machine, it should not be capable to run applications that requires QPF\QPC even if you add QPF\QPC support "by magic".
 
HPET could not be always the best timer available, so it could be disable and another timer may be selected on system installation.
Compared to "old" timers HPET performs usually well, but it could have higher latency compared to other timers available, even if those timers have slightly lower resolution. Generally speaking, 31MHz vs 14MHz vs 3.xMHz timer frequencies will not make such a huge resolution difference, but lower latency and higher accuracy will be preferred insterad.
Of course HPET could be also disable because it is "buggy" and the HIVs preferred to add another timing capabilities instead to fix it.
 
So, if HPET is disable by default on your system, there is a valid reason. Don NOT change HPET system values without a really valid reason (like you manually change it before by "mistake" ).
To be sure that the system will select HPET if necessary as system high performance timer, do not disable it on BIOS/firmware.
That's all.


 
 :)

Message cité 1 fois
Message édité par major95 le 27-09-2016 à 22:55:32
n°3249743
AmigaOnly
Posté le 28-09-2016 à 07:42:43  profilanswer
 

major95 a écrit :

De toute façon, ça ne changera pas grand-chose :
 
 :)


 
Relis bien la suite de la discussion :  
 
http://forums.guru3d.com/printthre [...] 30&page=34
 
Ensuite suivant ton matériel et OS fait les tests


---------------
Only Amiga is... Heu.. was possible :-)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Windows & Software
  Tutoriels

  [Tuto] Activer le HPET sous WINDOWS = Stabilité, gain en jeux, ...

 

Sujets relatifs
l'installeur de windows 10 supporte t'il les ports usb3 ?Déplacer Windows.old
Problème sur windows 10Problème carte graphique et windows 10
Windows 10 et Nvidia SHIELDdésinstaller patch windows 10
windows 10 moulineIcônes blanches au démarrage de Windows 8.1
Service de déploiement windows avec MDTmon ACER est revenu à windows 8 tout seul alors que j'étais en 8.1 !
Plus de sujets relatifs à : [Tuto] Activer le HPET sous WINDOWS = Stabilité, gain en jeux, ...



Copyright © 1997-2016 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR