Frage

Gibt es eine Möglichkeit, den Zeitstempelzähler auf x86-CPUs in Python auszulesen?

Ich weiß das mit rdtscp ist schlecht und benutzt rdtsc ist noch schlimmer.Aber vertrau mir, ich brauche diesen Wert wirklich oder zumindest eine Annäherung an diesen Wert.

Irgendwelche Ideen?

War es hilfreich?

Lösung

Mit normalem Python, Zeit.clock () ist das genaueste, was Sie bekommen werden.

time.clock()

Geben Sie unter Unix die aktuelle Prozessorzeit als Gleitkommazahl zurück ausgedrückt in Sekunden.Die Präzision und in der Tat die Definition die Bedeutung von "Prozessorzeit" hängt von der der C-Funktion ab mit dem gleichen Namen, aber in jedem Fall ist dies die zu verwendende Funktion für benchmarking von Python- oder Timing-Algorithmen.

Unter Windows gibt diese Funktion die Sekunden der Wanduhr zurück, die seit dem erster Aufruf dieser Funktion als Gleitkommazahl, basierend auf der Win32-Funktion QueryPerformanceCounter().Die Auflösung ist typischerweise besser als eine Mikrosekunde.

Wenn Sie wirklich Prozessor-Ticks haben möchten, merken Sie sich einfach die Zeit, die zum Ausführen dieses Python-Aufrufs benötigt wird - Python ist also nicht die richtige Sprache für die Mikrosekunden-Zeitmessung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top