「長時間実行」アプリケーションについて話すとき、JIT コンパイルがプリコンパイルされたものよりもコードを高速に実行する方法について多くのことを聞いてきました。しかし、アプリケーションを完全に最適化するにはどのくらいの時間がかかりますか?
念のため、例を示します。いくつかのメソッドがあります。それを と呼びましょうmySlowMethod()
。回転、乗算などの行列計算を毎秒数百回実行します。各通話の時間を測定したところ、次の結果が得られました。
long time = System.nanoTime();
mySlowMethod();
System.out.println(System.nanoTime()-time);
//first call
1577187 (1.6 ms)
//next 2 seconds
~60000 (0.06 ms)
//later
less than 10000 (0.01 ms)