Zeitdifferenz genau messen
Maik Görgens
- perl
0 Klaus Mock0 Hans35
Hallo!
Ist es möglich, mit Perl Zeitabstände Millisekundengenau zu messen?
Ich kenn nur die möglichkeit, zweimal time() anzuwenden und die Differenz zu bilden. Allerdings kann das teilweise sehr ungenau werden. Gerade bei kleinen Zeitabständen. Es müßte doch eigentlich möglich sein, da das Modul Benchmark ja auch sehr genau mißt.
Kann mir da jemand helfen?
Vielen Dank im Vorraus
Maik Görgens
Hallo,
Ist es möglich, mit Perl Zeitabstände Millisekundengenau zu messen?
Du kannst dafür das Modul Time:.HiRes verwenden. Du findest es dort, wo die meisten Module zu finden sind, auf dem nächstgelegenen CPAN-Server.
Grüße
Klaus
Hallo!
Ist es möglich, mit Perl Zeitabstände Millisekundengenau zu messen?
Ich kenn nur die Möglichkeit, zweimal time() anzuwenden und die Differenz zu bilden. Allerdings kann das teilweise sehr ungenau werden. Gerade bei kleinen Zeitabständen.
Was heißt denn da "ungenau"? Wenn ich die Zeit auslese, dann stimmt die auch, da addiert niemand was dazu. Allenfalls, dass zwischen "time"-Aufruf und Ausführung des Befehls sich ein anderer User mit höherer Priorität sich dazwischendrängt. Dagegen kann man wohl nur was tun, wenn man Einfluß auf die Vergabe der Prioritäten hat. Oft ist es aber so, dass man bei Geschwindigkeitsmessungen ja gerade wissen will, wie schnell es "im wirklichen Betrieb" geht. Da dauert die Ausführung eines Befehls halt unterschiedlich lange und es gibt eine Streuung der Messergebnisse. Das sind _keine_ Messfehler.
Gruß
Hans35
Hallo!
Was heißt denn da "ungenau"?
Ich meinte mit ungenau, das er bei z.B. 2.8 Sekunden auf 3 rundet, bzw. immer abrundet oder so (weiß ich nicht genau). Auf jeden Fall bekomm ich keine 2.8 Sekunden.
Gruß Maik