Linux* ターゲット上のパフォーマンス結果の一時ディレクトリー

Linux* ターゲットシステムで、リモートまたはローカルに収集されるデータの一時ディレクトリーを設定します。

インテル® VTune™ プロファイラーでハードウェア・イベントベース・サンプリング収集を行う際や、解析結果のディレクトリーをマウントされた共有ディレクトリーに設定する際に、一時データファイルはシステムのグローバル一時ディレクトリーに書き込まれます。一般的な、グローバル一時ディレクトリーは、/tmp です。

インテル® VTune™ プロファイラーの解析時間の長さと収集されるデータ量によっては、大量の一時ディスク領域が必要になることがあります。一時データが、割り当てられている利用可能なグローバル一時ストレージ領域を超える可能性があります。システムのグローバル一時領域を超えた場合、インテル® VTune™ プロファイラーの解析は中断し、次のようなメッセージが出力されます。
Warning: Cannot load data file `/home/user/r001hs/data.0/tbs0123456789.tb6' (tbrw call…..) failed: Invalid sample file (24)
このメッセージが表示された場合、インテル® VTune™ プロファイラーの一時ファイルはすでに一時ストレージに存在せず、十分なディスク領域があると誤解を招く恐れがあります。この場合、解析実行中に一時ストレージの利用状況をチェックしてください。システムの一時ストレージの使用率が 100% に達したら、このエラーの原因である可能性があります。

エラーの原因が一時ディスク領域不足である場合、データ収集のため代替一時ディレクトリーを設定できます。インテル® VTune™ プロファイラーは、引き続き小さなスクラッチファイル (例えば、sep_ipc_socket_0 ソケットファイル) をシステムのグローバル一時ディレクトリーに書き込むかもしれません。しかし、lwp で始まる大きなファイルには、定義された一時ディレクトリーが使用されます (例: lwp28478__wallclock.tb7、lwp28478_user.mrk、lwp28478_7.txt)。インテル® VTune™ プロファイラーがファイナライズを完了すると、すべての一時ファイルは自動的に削除されます。

ローカルターゲット向けに代替一時ディレクトリーを設定

ローカルターゲットでは、標準 Linux* TMPDIR 環境変数に、十分な一時ストレージ領域を持った代替ディレクトリー・パスを設定します。環境変数 TMPDIR を設定するには、次の操作を行います。

  1. インテル® VTune™ プロファイラーのコマンドラインや GUI を実行するシェルで TMPDIR に値を設定してエクスポートします。次に例を示します。

    > export TMPDIR=/directory_path/ tmp

  2. 割り当てを確認します。

    > echo $TMPDIR
  3. TMPDIR に割り当てられたディレクトリーの権限が十分であることを確認します。

    > ls -ld /directory_path/ tmp
  4. シェルウィンドウから、コマンドラインまたは GUI を使用してインテル® VTune™ プロファイラーのハードウェア・イベントベース・サンプリング収集を実行します。

リモートターゲット向けに代替一時ディレクトリーを設定

GUI からリモートターゲットの一時ディレクトリーを変更するには、次の操作を行います。

  1. [解析の設定] ボタンをクリックします。

  2. [リモート Linux* (SSH)] ターゲットシステムを選択します。

  3. [リモートシステム上の一時ディレクトリー] フィールドで代替一時ディレクトリーを指定します。

コマンドラインから代替一時ディレクトリーを指定するには、target-tmp-dir オプションを使用します。次に例を示します。

host>./vtune --target-system=ssh:vtune@10.125.21.170 -target-tmp-dir=/home/tmp –collect hotspots -knob sampling-mode=hw -knob enable-stack-collection=true -- /home/samples/matrix

関連情報