Pythonのtimeメソッド perf_counter_ns

Python 3.7以降では、timeモジュールにperf_counter_nsという関数が追加されており、高精度な性能計測(パフォーマンス計測)のために使用されます。この関数は、perf_counter関数と同様に高精度な経過時間を提供しますが、単位がナノ秒(ns)単位となります。

以下は、time.perf_counter_ns()関数の使用例です:

python
import time

# 開始時間を取得(高精度パフォーマンスカウンター、ナノ秒単位)
start_time_ns = time.perf_counter_ns()

# 何らかの処理を行う(例: 無駄な計算)
for _ in range(1000000):
    pass

# 終了時間を取得(高精度パフォーマンスカウンター、ナノ秒単位)
end_time_ns = time.perf_counter_ns()

# 処理時間を計算(ナノ秒単位)
elapsed_time_ns = end_time_ns - start_time_ns

print(f"処理時間: {elapsed_time_ns}ナノ秒")

このコードでは、time.perf_counter_ns()関数を使用して開始時間と終了時間を取得し、その間に何らかの処理を行います。そして、終了時間から開始時間を引いて処理時間を計算しています。

perf_counter_ns関数は高精度な性能計測に適しており、ナノ秒単位で時間を測定するため、非常に精密なパフォーマンス測定が可能です。システムクロックの影響を受けずに、プログラムの実行時間や処理時間を正確に測定できます。ただし、この関数も相対的な時間を提供するため、実際の時刻や日付情報は提供しません。