私がJavaプログラムを持っているとしましょうTest.class
。実行時間を測定したい。私はこれを行うためのラッパーを以下のように作成しました:
class RunTest {
public static void main(String[] args) {
long sum = 0;
int iterations = 20;
int warmupNum = 10;
for(int i=0; i<iterations; i++){
long start = System.nanoTime();
Test.main(args);
long end = System.nanoTime();
if( i > warmupNum )
sum += end - start;
}
System.out.println("ave: "+sum/(iterations-warmupNum));
}
}
ここでどのように選択するかwarmupNum
、大きいほど良いですか?どれくらいの大きさで十分ですか?これは、Javaプログラムのパフォーマンスを測定するための「標準/一般的な」方法ですか?