インテル® VTune™ プロファイラーは、Yocto Project* が動作する組込み Linux* デバイス上でパフォーマンス・データを収集して解析できます。ここでは、Yocto Project* 1.8 がインストールされた組込みデバイス上で、インテル® VTune™ プロファイラー製品の統合レイヤーを使用してパフォーマンス・データを収集する設定例を示します。この手順では、インテル® VTune™ プロファイラー製品のドライバーをターゲットパッケージと統合し、それらを組込みデバイスイメージに含めます。カーネルにアクセスするには root 権限が必要です。
インテル® VTune™ プロファイラーのドライバーをインストールしなくても収集できるデータがあります。ドライバーを使用しないイベントベース・サンプリング・データの収集には、ドライバーのインストールと root 権限は必要ありません。全機能を使用するには、インテル® VTune™ プロファイラー・ドライバーをインストールしてください。
インテル® VTune™ プロファイラーは、次の 2 つのパッケージで 2 つの Yocto Project* レシピを提供します。
最初に、vtune_profiler_target_sep_x86_64.tgz パッケージには、intel-vtune-sep-driver レシピが含まれ、ハードウェア・イベントベース・サンプリングを使用したパフォーマンス・データ収集を可能にします。このレシピを使用してスタックを収集すると、自動的にドライバーを使用しない収集モードに切り替わります。このレシピには、Linux* カーネル設定の最小限の要件しかありません。
次に、vtune_profiler_target_x86_64.tgz パッケージには、intel-vtune-drivers レシピが含まれ、ハードウェア・イベントベース・サンプリングを使用した完全なパフォーマンス・データを可能にします。このレシピには、Linux* カーネル設定の追加要件があります。この intel-vtune-drivers レシピは、intel-vtune-sep-driver レシピのスーパーセットです。
複数のレシピを同時に使用することはできません。Yocto Project* 内でレシピをビルドする x86 と x86_64 ターゲットパッケージに違いはありません。どちらも 32 ビット、または 64 ビット・システムで利用できます。
インテル® VTune™ プロファイラーのターゲットパッケージをダウンロードするか、インテル® VTune™ プロファイラーがインストールされているホストシステムの <install-dir>/target/linux ディレクトリーでパッケージを探します。
選択したターゲットパッケージを Yocto Project* のビルドシステムにコピーします。
Yocto Project* ビルドシステムで、vtune_profiler_target_sep_x86_64.tgz または vtune_profiler_target_x86_64.tgz アーカイブを書き込み可能な場所に展開します。
cd $HOME
tar xvzf vtune_profiler_target_x86_64.tgz
(オプション) ユーザー設定を指定するには、$HOME/vtune_profiler_<version>/sepdk/vtune-layer/conf/user.conf ファイルを変更します。
インテル® VTune™ プロファイラーのレシピがターゲットパッケージとは異なる場合は、次のいずれかのパスを指定します。
ZIP されていないターゲットパッケージへのパス: VTUNE_TARGET_PACKAGE_DIR = "$HOME/vtune_profiler_<version>"
インテル® VTune™ プロファイラーへのパス: VTUNE_PROFILER_2020_DIR = "/opt/intel/vtune_profiler"
システムブートの間に SEP ドライバーを統合するため、ADD_TO_INITD = "y" を指定します。
または、Yocto ベースのシステムでは、ADD_TO_SYSTEMD = "y" を指定します。
Yocto Project* の開発環境で、レイヤーへのパスを bblayer.conf ファイルに追加します。次に例を示します。
vi conf/bblayers.conf
BBLAYERS = "$HOME/vtune_profiler_<version>/sepdk/vtune-layer\"
ファイルは次のようになります。
BBLAYERS ?= " \
$HOME/source/poky/meta \
$HOME/source/poky/meta-poky \
$HOME/source/poky/meta-yocto-bsp \
$HOME/source/poky/meta-intel \
$HOME/vtune_profiler/sepdk/vtune-layer \
"
conf/local.conf にインテル® VTune™ プロファイラーのレシピを追加します。この例では、intel-vtune-drivers を使用します。
vi "conf/local.conf"
IMAGE_INSTALL_append = " intel-vtune-drivers"
intel-vtune-drivers と intel-vtune-sep-driver を同時に追加するこはできません。
ターゲットのオペレーティング・システムをビルドします。次に例を示します。
bitbake core-image-sato
カーネル設定オプションを変更した場合、カーネルを忘れずに再コンパイルしてください。
ホストシステム上で次に示す手順を使用して、組込みデバイスでの解析を設定し起動します。
RSA キーを使用して、ターゲットへのパスワードなしの SSH アクセスをセットアップします。
解析を開始します。