1 JDK Mission Controlの新機能 9

JDK Mission Control (JMC)は、Javaアプリケーションの管理、モニター、プロファイリングおよびトラブルシューティングのための高度なツール・セットです。JMCを使用すると、プロファイリング・ツールやモニタリング・ツールに通常伴うパフォーマンス・オーバーヘッドを発生させることなく、コードのパフォーマンス、メモリー、待機時間などの領域について、効率的で詳細なデータ分析を行うことができます。

JMC 9で導入された新機能の一部を次に示します。

  • JMCパーサーの割当てを減らすと、DoublesParserStatsの割当て率の減少など、JFRパーサーのパフォーマンスが大幅に向上しました。バイナリ検索により、線形時間再順序付けおよび線形レーン検索の速度も向上しました。
  • イベント・タイプIDによる検索が有効化され、イベントIDの横の列に表示されます(デフォルトでは非表示)。
  • JMCは、GraalVMネイティブ・イメージでflightrecorderを開始できるようになりました。
  • フレームグラフの視覚化のパフォーマンスと効率を向上させるために、Java Swingベースのフレームワークが使用されるようになりました。また、フレーム・グラフ・モデル作成のパフォーマンスが向上しました。
  • JVMを監視するためのJVMブラウザのスキャン頻度を指定する新しいフィールドが追加されました。スキャン頻度を更新するには:
    • Windowsでは、「ウィンドウ」「プリファレンス」「JDK Mission Control」「JVMブラウザ」「ローカル」の順に移動します。
    • macOSでは、「JDK Mission Control」「設定」「JDK Mission Control」「JVMブラウザ」「ローカル」の順に移動します。
    JVMブラウザのリフレッシュ間隔(ミリ秒)フィールドに必要なスキャン間隔を入力します。
  • JMC 9では、ダーク・モードがサポートされるようになりました。「プリファレンス」「一般」「外観」に移動し、ダーク・テーマを選択して有効にします。
  • jdk.FinalizerStatistics JFRイベントを使用するように新しいルールが追加されました。このイベントは、将来のリリースで削除されるため非推奨になったファイナライザがアプリケーションで実行されている場所を特定するのに役立ちます。
  • G1 MMU情報を表示するための新しいルールが追加されます。一時停止時間ターゲットと実際の一時停止時間が比較され、一時停止ターゲットを超えた場合は警告メッセージが表示されます。
  • GCの逆並列性を検出するために、新しいルールがJMCに追加されました。新しいルールでは、JDK 20で導入された新しいGC CPU時間JFRイベントが使用されます。詳細は、『Add rule to detect GC Inverted Parallelism』を参照してください。
  • 「スタック・トレース」タブにパーセント(期間別)列が追加されます。集計期間の割合(時間単位)が表示されます。
  • 自動分析では、すべての無視されたルールの理由が表示されるようになり、欠落したイベントの背後にある理由を明確に理解できます。
  • スタック・トレースは、縮小形式でエクスポートできます。エクスポートするスタック・トレースを右クリックし、スタック・トレースのエクスポートおよび「短縮」を選択します。
  • JMCは、Linux aarch64プラットフォームでサポートされるようになりました。
  • Twitterが提供するAPIの変更により、Twitter用のJMCプラグインが削除されました。