IntelliJ IDEA 2026.1 Help

カスタムプロファイラー構成

CPU および割り当てプロファイリングの場合、IntelliJ IDEA は次のプロファイラーとの統合を提供します。

  • Java Flight Recorder – JDK の一部として提供される標準のプロファイリングツール。

  • 非同期プロファイラー – ネイティブコールおよびメモリ割り当てデータも収集できる非常に正確なプロファイラー。

デフォルトでは、IntelliJ IDEA は両方のプロファイラーを並行して実行して、最も正確な結果を提供します。 サポートされているプロファイラーを個別に使用することもできますが、ほとんどのシナリオでは、すぐに使用できる組み合わせ構成の方が適しています。 このアプローチでは、両方のプロファイラーの利点を活用し、非常に特殊な要件がない限り、セットアップを一切不要にします。

非同期プロファイラー および Java Flight Recorder 構成では、これらのツールを個別に実行し、特定の要件に従って微調整することができます。 このトピックでは、これらの構成と環境をセットアップする方法について説明します。

別のプロファイラー構成を作成する

  1. 設定 | ビルド、実行、デプロイ | Java プロファイラー に移動します。

  2. 新規構成の追加 をクリックして、プロファイラーを選択します。

  3. 必要に応じてプロファイラーオプションを変更します。

    オプションの意味と目的については、それぞれ 非同期プロファイラーJava Flight Recorder の章を参照してください。

非同期プロファイラー

Windows および macOS では、プロファイラーはそのまま使用できます。 Linux の場合は、プロファイリングを開始する前にカーネルオプションを調整する必要があります。

Linux でのカーネルオプションの調整

  1. perf_event_paranoid を調整します。 このオプションは、非 root ユーザーによるパフォーマンスイベントデータの使用を制御します。

    プロファイラーがルート権限なしでパフォーマンス情報を収集できるようにするには、値を 2 未満に設定します。

    sudo sh -c 'echo 1 >/proc/sys/kernel/perf_event_paranoid'
  2. kptr_restrict を調整します。 このオプションは、カーネルアドレスの公開に関する制限を設定します。

    カーネルシンボルを適切に解決するには、値を 0 に設定して、 kptr_restrict によって提供される保護を無効にします。

    sudo sh -c 'echo 0 >/proc/sys/kernel/kptr_restrict'

デフォルトでは、これらの変更は現在の OS セッションにのみ影響します。 システムを再起動して設定を保持するには、次のコマンドを実行します。

sudo sh -c 'echo kernel.perf_event_paranoid=1 >> /etc/sysctl.d/99-perf.conf' sudo sh -c 'echo kernel.kptr_restrict=0 >> /etc/sysctl.d/99-perf.conf' sudo sh -c 'sysctl --system'

構成オプション

オプション

説明

エージェントオプション

エージェントに渡されるオプション。 これらは、たとえば、壁掛けウォッチのプロファイリングを有効にしたり、サンプリング間隔を調整したりするために使用できます。

エージェント

プロファイリングに使用されるエージェント。

Java Flight Recorder

Java Flight Recorder は、Windows、Linux、macOS で利用できます。 次の JDK ビルドでネイティブにサポートされています:

Oracle の JFR を有効にする JDK 8-11

  1. メインメニューで 実行 | 実行構成の編集 に移動し、左側のリストから JFR で分析する実行構成を選択します。

  2. VM オプション フィールドに、次の行を追加します: -XX:+UnlockCommercialFeatures

  3. 変更を適用して、ダイアログを閉じます。

JFR の有効化

JFR 構成

2 つの事前にインストールされた構成があります: デフォルトプロファイルデフォルト 構成はオーバーヘッドが低く(約 1%)、 そのため、継続的なプロファイリングに適しています。 プロファイル 構成はオーバーヘッドが約 2% で、より詳細なアプリケーション プロファイリングに使用できます。

これらの構成は、ほとんどのユースケースをカバーしています。 設定 | ビルド、実行、デプロイ | Java プロファイラー | Java Flight Recorder で最適な構成を選択できます。

事前定義された構成がニーズを満たさない場合は、 Java Mission Control を使用して独自の設定を作成およびアップロードできます。

カスタム JFR 構成を作成する (オプション)

  1. JAVA_HOME/bin/jmc または https://jdk.java.net/jmc/(英語) からダウンロードできる Java Mission Control を実行します。

  2. Java Mission Control のメインメニューから、 ウィンドウ | フライト記録テンプレートマネージャー を選択します。

  3. 右側のパネルで ファイルのインポート をクリックし、 .jfc 形式の事前インストール済み構成のいずれかを選択します。

    • Java 10 以前の場合: JAVA_HOME/jre/lib/jfr/

    • Java 11 以降の場合: JAVA_HOME/Contents/Home/lib/jfr/

  4. 編集 | 拡張 を選択し、必要な設定を変更して、 OK をクリックします。

  5. フライト記録テンプレートマネージャー ダイアログで、 ファイルのエクスポート をクリックします。

  6. 新しい設定ファイルに別の名前を指定し、必要に応じてその場所を変更します。 保存する をクリックします。

カスタム設定の構成の詳細については、「テンプレートを使用して記録データを制御する(英語) 」を参照してください。

IDE にカスタム構成をロードする (オプション)

  1. 設定 ダイアログ(Ctrl+Alt+S )で、 ビルド、実行、デプロイ | Java プロファイラー を選択します。

  2. 追加ボタン をクリックして、カスタム設定をロードする Java Flight Recorder プロファイリング構成を選択するか、新しい構成を作成します。

  3. プロファイリング設定 領域で、 カスタム設定ファイル オプションを選択し、 参照ボタン をクリックします。

  4. カスタム設定ファイルへのパスを指定し、 開く をクリックします。

  5. 変更を適用して、ダイアログを閉じます。

2026 年 3 月 30 日