興味深いJVMフラグが見つかりました:
java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version
それは何百ものさまざまなオプションを印刷します。また、JVMの動作の診断に役立つデフォルト値も出力します。別の興味深いフラグは次のとおりです。
-XX:+UnlockExperimentalVMOptions
誰かがそれらのそれぞれを説明するドキュメントを知っていますか?
興味深いJVMフラグが見つかりました:
java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version
それは何百ものさまざまなオプションを印刷します。また、JVMの動作の診断に役立つデフォルト値も出力します。別の興味深いフラグは次のとおりです。
-XX:+UnlockExperimentalVMOptions
誰かがそれらのそれぞれを説明するドキュメントを知っていますか?
回答:
-XX:+JVMCIPrintProperties
Graal JITオプションもお見逃しなく。
ソースに飛び込む前に、以下の抜粋をざっと見て、適切なオプションをより早く見つけることができます。
https://chriswhocodes.com/(OracleJDK 6 /7/8/9/10/11/12、OpenJDK 8/9/10/11、Graal CE / EE、OpenJ9、Zing)
http://jvm-options.tech.xebia.fr/
http://www.pingtimeout.fr/2012/05/jvm-options-complete-reference.html
http://stas-blogspot.blogspot.com/2011/07/most-complete-list-of-xx-options-for.html
私が見つけた最高のドキュメントはソースです。
私が使用してきました。このSO Q&Aをデバッグビルドを作成します。このデバッグビルドでは、を実行できますjava -XX:+AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+PrintFlagsFinal -XX:+PrintFlagsWithComments -version
。
ソースのあるディレクトリから、次のコマンドを実行できます(Linux、Cygwinなどを使用していると想定)。
grep -FR 'UnlockExperimentalVMOptions' hotspot/
または、以下(ファイル*.cpp
と*.hpp
ファイルのみを表示):
find hotspot/ -name '*.[ch]pp' -exec grep -F 'UnlockExperimentalVMOptions' {} +
次に、ソースファイルを確認します。おそらく、すべてのオプションを説明するドキュメントが1つもない最も良い理由は、これらのオプションの一部は、JVMを本当に理解している人に任せた方がよく、そのための最善の方法は、ソースコードに精通することです。
だから、偉大なマスターの(ほぼ)言葉で、use the source
!
read the source
。