Warum können aufeinanderfolgende Anrufe an perf_counter_ns unter Windows dieselbe Nummer zurückgeben?Python

Python-Programme
Anonymous
 Warum können aufeinanderfolgende Anrufe an perf_counter_ns unter Windows dieselbe Nummer zurückgeben?

Post by Anonymous »

Verwenden des folgenden Codes, das ich angenommen hätte. Siehe CNT in der Nähe von 0 , aber unter Windows sehe ich nur Werte über 500.000.

Code: Select all

from time import *

def test_time(f, c):
cnt = 0
for i in range(c):
ps, ts = f(), f()
if not ps - ts:
cnt += 1
return cnt

if __name__ == '__main__':
res = test_time(perf_counter_ns, 1_000_000)
print(res) # usually returns a count of over 500k
< /code>
Unter Linux geschieht dies nicht. Ich verstehe, dass die Ausgangsauflösung unter Windows auf 100 NS -Schritte begrenzt ist. Meine Frage, ob mir hier etwas fehlt oder wenn dies eine Möglichkeit gibt, unter Windows zu funktionieren. Es gibt einen guten Überblick über die Präzisionszeitmessung mit Python, befasst sich jedoch nicht mit der engeren Frage, warum aufeinanderfolgende Anrufe an perf_counter_ns 
denselben Wert unter Windows und nicht unter Linux ergeben können.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post