Question
Est-il possible de lire le timestamp-compteur sur les Processeurs x86 en Python?
Je sais que l'utilisation rdtscp
est mauvais et l'utilisation de rdtsc
c'est encore pire.Mais croyez-moi j'ai vraiment besoin de cette valeur, ou au moins une approximation de cette valeur.
Des idées?
La solution
Avec la normale du python, du temps.clock() est la plus précise de la chose que vous obtiendrez.
time.clock()
Sur Unix, retourne le temps processeur comme un nombre à virgule flottante exprimée en secondes.La précision, et en fait la définition même de la notion de “temps processeur”, ne dépend que de la fonction C du même nom, mais en tout cas, c'est la fonction à utiliser pour l'analyse comparative de Python ou de l'échéancier des algorithmes.
Sur Windows, cette fonction renvoie l'horloge murale secondes écoulées depuis le premier appel à cette fonction, comme un nombre à virgule flottante, basé sur la Fonction Win32 QueryPerformanceCounter().La résolution est généralement mieux que la microseconde.
Si vous voulez vraiment avoir du processeur tiques, rappelez-vous juste le temps qui est nécessaire à l'exécution de ce python appel - si Python n'est pas le meilleur langage pour faire de la microseconde de mesure.