解析ターゲットオプション

[解析の設定] ウィンドウに表示されるターゲット固有の解析オプションを使用して、ターゲットの解析を管理します。

ターゲット設定オプションにアクセスするには、次の操作を行います。

  1. [解析の設定] ウィンドウを開きます。

  2. [どこを] ペインでターゲットシステムを選択します。

  3. [何を] ペインでターゲットタイプを選択して、次のようにオプションを設定します。

現在のホストからアクセスできないターゲット向けのコマンドライン設定を生成するには、[どこを] ペインで [任意のホスト] ターゲットシステムを選択します。ターゲットで実行されるオペレーティング・システム (Windows* または GNU*/Linux*) とハードウェア・プラットフォームを選択します。

ターゲットオプションは、選択するターゲットシステムとターゲットのタイプ ([アプリケーションを起動][Android* パッケージを起動][プロセスにアタッチ]、または [システムをプロファイル]) によって異なります。

基本オプション

操作

説明

[Visual Studio* プロジェクトから設定を引き継ぐ] チェックボックス (Visual Studio* IDE でのみサポート)

Visual Studio* IDE で開いているプロジェクトと設定を、ターゲットの設定として引き継ぐかどうか指定します。このチェックボックスをオンにすると、ほかのターゲット設定を編集できなくなります。

[システム環境変数を引き継ぐ] チェックボックス

システムとユーザー定義環境変数を継承してマージします。オフの場合、ユーザー定義変数のみが設定されます。

[アプリケーションを起動] オプション

[アプリケーション] フィールド

解析するアプリケーション (バイナリーまたはスクリプト) のフルパスを指定します。

[アプリケーションの引数] フィールド

アプリケーションの引数を指定します。

[アプリケーション・ディレクトリーを作業ディレクトリーとして使用] チェックボックス

作業ディレクトリーとアプリケーション・ディレクトリーを自動で一致させます (デフォルトで有効)。アプリケーション・ディレクトリーは、アプリケーションが配置されるディレクトリーです。例えば、Linux* アプリケーション /home/foo/bar では、アプリケーション・ディレクトリーは /home/foo です。アプリケーション・ファイルはあるディレクトリーにあり、別のディレクトリー (作業ディレクトリー) から起動する必要がある場合、アプリケーション・ディレクトリーと作業ディレクトリーは異なる場合があります。

[作業ディレクトリー] フィールド

解析ターゲットを起動するディレクトリーを指定します。デフォルトでは、アプリケーション・ディレクトリーと同一です。

[プロセスにアタッチ] オプション

[プロセス名] フィールド

解析する実行可能ファイルを名称で識別します。

[PID] フィールド

解析する実行可能ファイルをプロセス ID (PID) で識別します。

[選択] ボタンをクリックして、アタッチ可能なプロセスの一覧を表示します。注目するプロセスを選択すると、インテル® VTune™ プロファイラーは自動で [プロセス名] フィールドに選択したプロセスのデータを入力します。

[Android* パッケージを起動] オプション

[パッケージ名] フィールド

解析する Android* パッケージ名 (*.apk) を指定します。

解析ターゲットのデバイスにインストールされている Android* アプリケーションや対応するパッケージ (*.apk) を表示するには、[選択] ボタンをクリックします。対応するチェックボックスをオンにして、デバッグ可能な APK のみを表示できます。

非ルートデバイスのパフォーマンスを解析する場合、デバッグ属性を true (android:debuggable="true") に設定して、Android* アプリケーションをコンパイルしますが、最適化が有効になるように Application.mkAPP_OPTIMrelease に設定します。

[任意のホスト] オプション

[MPI ランチャーを使用] チェックボックス

MPI 解析向けのコマンドライン設定を生成するには、チェックボックスをオンにします。次の MPI 解析オプションを設定します。

  • [MPI ランチャーの選択]: 解析に使用する MPI ランチャーを選択します。[インテル® MPI] ランチャーオプション (デフォルト) を有効にするか、[その他の MPI ランチャー] を選択して使用するランチャーを指定します。

  • [ランク数]: アプリケーションが使用するランク数を指定します。

  • [プロファイルするランク]: [すべて] を使用してすべてのランクをプロファイルするか、[選択したランク] を選択して特定のランク数 (例えば、2-4,6-7,8) を指定します。

  • [結果の場所]: 解析結果を保存するディレクトリーへの相対または絶対パスを指定します。

高度なオプション

ターゲットの詳細を設定するには、[高度] セクションを使用します。

操作

説明

[ユーザー定義環境変数] フィールド

アプリケーションの実行に必要な環境変数を指定します。

[マネージドコードのプロファイル・モード] メニュー

マネージドコードのプロファイル・モードを選択します。[マネージド] モードは、マネージド領域のみを収集して、データをマネージドソースに関連付けます。[ネイティブ] モードは、すべてのデータを収集しますがデータをマネージドソースに関連付けません。[ミックス] モードは、必要に応じて、すべてのデータを収集して、マネージドソースにデータを関連付けます。

[指定時間後に収集を自動再開 (秒)]

データ収集が再開されるまでの経過時間を指定します。このオプションが使用されると、収集は自動的にポーズモードで開始されます。

[指定時間後に収集を自動停止 (秒)]

ターゲットを実行開始からデータを収集する期間を秒単位で設定します。これは、解析結果から後処理などを除外する際に役立ちます。

[子プロセスを解析] チェックボックス

ターゲットプロセスによって起動されたプロセスのデータを収集します。スクリプトから起動されるアプリケーションをプロファイルする際にこのオプションを使用します。

このオプションを選択すると、解析する子プロセスを指定する [プロセスごとの設定] が有効になります。例えば、ターゲット・アプリケーションがシェルを呼び出したりプロセスを生成する場合、それらを解析から除外して、開発したプロセスのみを対象とすることができます。

[デフォルト] プロセス設定は、すべてのプロセスの解析方法を表します。この行は削除できませんがカスタマイズできます。選択に応じて、データ収集に固有のプロセス (セルフ値) と、それらが生成する子プロセス (の値) を含めるか除外するかを選択できます。

このオプションは、ハードウェア・イベントベース解析タイプには適用されません。

[持続期間の予測] メニュー

これは古いオプションです。代わりに、[どのように] 設定ペインの [CPU サンプリング間隔] オプションを使用します。

アプリケーションの持続期間を予測します。この値は収集されるデータのサイズに影響します。実行時間が長いターゲットでは、結果サイズを減らすためサンプリング間隔が大きくなります。ハードウェア・イベントベース・サンプリング解析タイプでは、インテル® VTune™ プロファイラーはこの予測を基に設定された SAV (サンプリング間隔) に乗数を適用します。

[複数実行を許可] チェックボックス

ハードウェア・イベントベース収集でより正確な結果を取得するため、複数実行を有効にします。無効にすると、コレクターは単一のイベント収集を多重化するため、結果の正確性は低くなります。

[システム全体を解析] チェックボックス

システム上で実行されるすべてのプロセスの解析を有効にします。無効にすると、ターゲットプロセスのみ解析されます。

このオプションは、ハードウェア・イベントベース解析タイプにのみ適用されます。

[データの収集を以下で制限] セクション

生データの収集量が非常に多く処理に時間がかかる場合、次のオプションにより収集するデータサイズを制限します。

  • [収集開始からの結果サイズ (MB)]: 収集する結果の最大サイズを設定します (MB)。インテル® VTune™ プロファイラーは、ターゲットの実行開始からデータの収集を始め、結果サイズが指定した制限に達するとデータ収集を中断します。データサイズを無制限にするには、0 を指定します。

  • [収集終了からの時間 (秒)]: ターゲットを実行または収集が終了する前の最後の数秒間のみの解析をタイマー (秒単位) で設定します。例えば、制限時間を 2 秒に設定すると、インテル® VTune™ プロファイラーは最初からデータ収集を行いますが、収集を完了する前の最後の 2 秒間のデータのみを保存します。

結果ディレクトリーに保存されるデータサイズは、次の理由により、指定する結果サイズと一致しないことがあります。

  • インテル® VTune™ プロファイラーは、定期的にデータサイズを確認するため、収集されたデータサイズが制限を超えることがあります。

  • ファイナライズ中にインテル® VTune™ プロファイラーは、生データをソースとバイナリーファイルに関連する追加情報とともにデータベースに読み取ります。

[CPU マスク] フィールド

データを収集する CPU を指定します (例: 2-8,10,12-14)。このオプションは、ハードウェア・イベントベース解析タイプでのみ適用できます。

[カスタムコレクター] フィールド

外部収集ツールを起動するコマンドラインを提供します。後で CSV 形式で、カスタム収集データ (時間間隔とカウンター) をインテル® VTune™ プロファイラーの結果にインポートできます。

[ファイナライズ・モードの選択] セクション

ファイナライズは多くのシステムリソースを必要とします。処理能力が高いターゲットシステムでは、[完全] モードを選択して収集後即座に適用します。それ以外では、[高速] モードを選択してファイナライズを短縮するか、別のシステムで実行するため延期します (チェックサムのみを計算)。

[ラッパースクリプト] フィールド

収集を開始する前に、ターゲットシステムで起動するスクリプトを用意します。ホストシステムでは、ターゲット環境を準備し、インテル® VTune™ プロファイラーのコレクターを呼び出すカスタムスクリプトを準備できます。

ラッパースクリプトの例を示します。

#!/bin/bash

# 事前スクリプト
echo "Target process PID: $VTUNE_TARGET_PID"

# インテル® VTune™ プロファイラーのコレクターを実行
"$@"

# 事後スクリプト
ls -la $VTUNE_RESULT_DIR

スクリプトからターゲット・オペレーティング・システムの CLI を介してアクションを実行し、"$@" または "$*" を使用してすべての引数をスクリプトに渡し、インテル® VTune™ プロファイラーを開始できます。

スクリプトでは、次の環境変数を使用できます。

VTUNE_TARGET_PID
        VTUNE_TARGER_PROC_NAME
        VTUNE_RESULT_DIR
        VTUNE_TEMP_DIR
        VTUNE_TARGET_PACKAGE_DIR
        VTUNE_DATA_DIR
        VTUNE_USER_DATA_DIR

  • インテル® VTune™ プロファイラーはスクリプトの内容を維持します。スクリプトはプロジェクトに保持され、プロジェクト内のすべての解析で実行されます。スクリプトに変更を適用するには、同じ [ラッパースクリプト] フィールドを使用してスクリプトを再度アタッチします。

  • Linux* ターゲットでは、スクリプトファイルの行末が LF であることを確認してください。

[結果の場所] オプション

結果ファイルを保存する場所を選択します。デフォルトでは、結果はプロジェクト・ディレクトリーに保存されます。

[MPI トレース] チェックボックス (Linux* ターゲットのみ)

MPI コードを追跡するためコレクターを設定し、インテル以外の MPI ライブラリー実装の MPI ランク ID を調査します。

[KVM ゲスト OS の解析] チェックボックス (Linux* ターゲットのみ)

KVM ゲストシステムのプロファイルを有効にします。カーネルシンボルを正しく解決するため、以下の設定を行います。

  • ゲスト OS からコピーされた /proc/kallsyms ファイルへのローカルパスを指定します。

  • ゲスト OS からコピーされた /proc/modules ファイルへのローカルパスを指定します。

[Android* デバイス] オプション

[未接続デバイスを解析] チェックボックス

未接続デバイスの収集を有効にして、結果への ADB 接続と電源の影響を除外します。このオプションを使用する場合、ホストから解析を設定して起動しますが、データ収集は USB ケーブルやネットワークからデバイスが切断された後に始まります。収集結果は、デバイスが再接続されると自動的にホストへ転送されます。

[任意のホスト] オプション

[結果をファイナライズするシステムを選択] オプション

結果は、解析を実行したターゲットシステム上でファイナライズできます (デフォルト)。この場合、ターゲットシステムがファイナライズを行うのに十分な性能を備えていることを確認してください。別のシステムでファイナライズを実行することを選択した場合、インテル® VTune™ プロファイラーは異なるシステムでのバイナリーのあいまい性を回避するためモジュールのチェックサムのみを計算します。

サポートの制限

次にすることは?

[どのように] ペインで、指定したターゲットタイプに適用可能な解析タイプを選択し、[開始] ボタンをクリックして解析を実行します。

現在のホストからアクセス可能なターゲットでのみ解析を起動できます。任意のターゲットでは、コマンドライン設定を生成してバッファーに保存し、後で意図するホスト上で起動することのみが可能です。

関連情報