3

OpenJDK マイクロベンチマーク ツールであるJMHを使用しています。ビルド プロセスは、 jar 名と JMH 引数を渡しmicrobenchmarks.jarて呼び出したものを作成します。java -jar

オプションを指定してベンチマークを実行する必要があるのは-serverなぜですか?

つまり、ベンチマークを次のように実行する必要があります。

java -server -jar microbenchmarks.jar ...(jmh args)
4

2 に答える 2

9

まあ、それはあなたが測定しようとしているものに依存します。ほとんどの場合、マシンのデフォルトの JVM モードは、通常の Java アプリケーションが遭遇するのと同じ条件を再現するためのものです。

-serverしたがって、ほとんどのマシンでは人間工学自体が暗黙のうちにそれを選択するため、通常はベンチマークの実行に追加しません。 Server Class Machine Detectionを参照してください。

于 2013-12-10T08:10:01.823 に答える
3

これは、何をベンチマークするかに完全に依存します。サーバー JVM の特性を使用して、サーバー指向のワークロードを実行するときにシステムがどのように動作するかを測定する場合は、そのオプションを使用する必要があります。

参照 - JVM -server パラメータとは? -serverこれは、スイッチがより優れた JITting も実行することを示しています。

于 2013-12-09T19:35:02.900 に答える