インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

オフロード抽出ツール

このトピックは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャー、およびインテル® グラフィックス・テクノロジーをターゲットとするインテル® 64 アーキテクチャーと IA-32 アーキテクチャーにのみ適用されます。

説明

オフロード抽出ツールは、Windows* および Linux* システムで、FAT オブジェクトから組込みターゲット・オブジェクトを、FAT 実行ファイルから組込みターゲットバイナリーを抽出するスタンドアロン・ツールです。インテル® MIC アーキテクチャーおよびインテル® グラフィックス・テクノロジー関連のオフロード実行で利用できます。簡潔に表記するため、このトピックでは、インテル® MIC アーキテクチャーのターゲット・オブジェクトと実行ファイルはインテル® MIC ターゲット・オブジェクトと実行ファイル、インテル® グラフィックス・テクノロジー・ベースのターゲット・オブジェクトと実行ファイルは GFX ターゲット・オブジェクトと実行ファイルとします。

特徴と利点

インテル® MIC または GFX オフロード・オブジェクト/バイナリーはホスト・オブジェクト/バイナリーに組み込まれているため、デフォルトでは objdumpreadelf などのツールで解析やデバッグを行って直接検証することはできません。

しかし、64 ビットの Linux* システムまたは 32 ビット/64 ビットの Windows* システムでは、オフロード抽出ツールを利用して、FAT オブジェクト/バイナリーから GFX/インテル® MIC オブジェクト/バイナリーを抽出することができます。抽出されたものは、objdump または readelf ツールで解析可能な ELF オブジェクトです。

GFX ELF オブジェクトのテキストセクションは vISA (GFX JIT コンパイラー用仮想 ISA) なので、GFX オブジェクトではオブジェクト解析ツールのすべての機能が利用できるわけではありません。例えば、GFX オブジェクトに対して逆アセンブラーは利用できません。

ツールの使用

ターゲット・オブジェクト・ファイルを抽出するには、次のようにオフロード抽出ツールを起動します。

offload_extract  <fat host object>

抽出される GFX/インテル® MIC ターゲット・オブジェクトは、入力オブジェクト・ファイル名に GFX または MIC が追加された名前になります。 GFX とインテル® MIC ターゲット・オブジェクトの両方が組込まれている場合は、どちらも抽出されます。 ターゲット・オブジェクトは ELF 形式なので、オブジェクト・ファイル名の拡張子は .o になります。次に例を示します。

offload_extract host.obj => hostGFX.o、hostMIC.o

ターゲット実行ファイルを抽出するには、次のようにオフロード抽出ツールを起動します。

offload_extract  <fat host binary>

抽出される GFX/インテル® MIC ターゲット実行ファイルは、入力実行ファイル名に GFX または MIC が追加された名前になります。 GFX とインテル® MIC ターゲット実行ファイルの両方が組込まれている場合は、どちらも抽出されます。 次に例を示します。

offload_extract host.exe => hostGFX.gfx、hostMIC.mic

アーカイブ・ライブラリーからターゲット・オブジェクト・ファイルを抽出するには、最初に FAT アーカイブ・ライブラリーから個々の FAT オブジェクトを抽出し、各 FAT オブジェクトに対してオフロード抽出ツールを呼び出します。次に例を示します。

ar -x libhost.a
offload_extract <individual fat host object>

オプションの使用

オフロードバイナリー/実行ファイルの抽出を制御するオプションは 2 つあります。

ターゲットファイル名または出力ディレクトリーを指定するには、-o オプションを指定します。構文は次のとおりです。

offload_extract <fat host object|binary> [-o <output filename>]
offload_extract <fat host object|binary> [-o <output directory>]

-o オプションを使用する場合、生成されるターゲット出力ファイル名とディレクトリーに GFX または MIC は追加されません。

特定のターゲット GFX またはインテル® MIC オブジェクト/実行ファイルを抽出するには、-target オプションを使用します。構文は次のとおりです。

offload_extract <fat host object|binary> [-target gfx]
offload_extract <fat host object|binary> [-target mic]