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

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

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

インテル® VTune™ プロファイラーのプロファイル解析時間の長さと収集されたデータ量によって、大量の一時ディスク領域が必要になることがあります。一時データが、割り当てられている利用可能なグローバル一時ストレージ領域を超える可能性があります。システムのグローバル一時領域を超えた場合、インテル® VTune™ プロファイラーの解析は中断し、次のようなメッセージが出力されます: 警告: データファイル `/home/user/r001hs/data.0/tbs0123456789.tb6' (tbrw call…..) のロードに失敗しました: 無効なサンプルファイル (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

関連情報