0

time.time()Linuxでは、現在の時刻をus = 1/1000 ms正確に生成しているようです。

これを使用して、関数をms正確にプロファイリングできますか?

func_start = time.time() * 1000
#run something inbetween
print 'Function finishes in: %.3f ms' % ((time.time() * 1000) - func_start)
4

1 に答える 1

1

いいえ、そのように精度を上げることはありません。あなたも同様に行うことができます:

func_start = time.time()

print 'Function finishes in: %.3f ms' % ((time.time() - func_start) * 1000)

ただし、関数のパフォーマンスを正確に測定するには、OSのスケジューリング、同時発生するディスクフラッシュ割り込みなどの影響を取り除くために、関数を数回再実行する必要があります。

プラットフォームで可能な限り正確なタイミング方法については、timeitモジュールを使用するか、少なくともそのdefault_timer()機能を再利用してください。

于 2012-11-29T16:38:09.220 に答える