Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
|
prog:lazarus:time:time [18/03/2020 19:06] thierry créée |
prog:lazarus:time:time [18/03/2020 19:12] (Version actuelle) thierry [Temps super précis] |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Travailler avec le temps ====== | ====== Travailler avec le temps ====== | ||
| - | ===== QueryPerformanceCounter ===== | + | ===== Temps super précis ===== |
| + | |||
| + | == QueryPerformanceCounter == | ||
| ''QueryPerformanceCounter'' récupère la valeur actuelle du compteur de performance, qui est un horodateur à haute résolution (<1µs) pouvant être utilisé pour les mesures d'intervalles de temps. | ''QueryPerformanceCounter'' récupère la valeur actuelle du compteur de performance, qui est un horodateur à haute résolution (<1µs) pouvant être utilisé pour les mesures d'intervalles de temps. | ||
| Ligne 32: | Ligne 34: | ||
| * [[https://docs.microsoft.com/en-us/windows/win32/api/profileapi/nf-profileapi-queryperformancecounter]] | * [[https://docs.microsoft.com/en-us/windows/win32/api/profileapi/nf-profileapi-queryperformancecounter]] | ||
| * [[https://docs.microsoft.com/en-us/windows/win32/api/profileapi/nf-profileapi-queryperformancefrequency]] | * [[https://docs.microsoft.com/en-us/windows/win32/api/profileapi/nf-profileapi-queryperformancefrequency]] | ||
| - | ===== RDTSC ===== | + | == RDTSC == |
| Surement le temps le plus petit avec lequel on peut travailler. | Surement le temps le plus petit avec lequel on peut travailler. | ||
| - | Sur mon PC RDTSC retourne une valeur 266x superieur a QueryPerformanceCounter.\\ | + | Sur mon PC RDTSC retourne une valeur 266x superieur a ''QueryPerformanceCounter'' (voir ci-dessus).\\ |
| Et comme par hasard la vitesse de mon processeur est de 2.66Ghz | Et comme par hasard la vitesse de mon processeur est de 2.66Ghz | ||
| <code delphi> | <code delphi> | ||
| Ligne 42: | Ligne 44: | ||
| RDTSC; | RDTSC; | ||
| end; | end; | ||
| - | |||
| </code> | </code> | ||
| + | <note>Aprés je n'ai pousser l'experience plus loin,\\ | ||
| + | a savoir comment recuperer la vitesse du processeur pour convertir le temps RDTSC en microsecondes ou nanosecondes. | ||
| + | |||
| + | |||
| + | Et quid des processeurs dont la vitesse varie en fonction de la charge ???</note> | ||
| + | |||