インテル® メニー・インテグレーテッド・コア・アーキテクチャー (インテル® MIC アーキテクチャー) 対応のシステムでは、コードのセクションをオフロードして、ホスト CPU とコプロセッサーの両方でコードを実行することができます。デフォルトでは、インテル® コンパイラーはホスト CPU とコプロセッサーの両方で実行するようにコードをコンパイルしますが、このアーキテクチャー向けのアプリケーションの記述は、単一 CPU 向けのアプリケーションの記述と次の点で異なります。
ホスト CPU とコプロセッサーで使用される命令セットは似ていますが同一ではありません。
ホスト CPU とコプロセッサーは共通のシステムメモリーを共有しません。
これらの違いを考慮するため、インテル® Composer XE には、同様の命令セットおよびメモリー管理を制御する複数の言語拡張が含まれています。このチュートリアルで使用するコードは、これらの言語拡張を使用して、コプロセッサーにオフロードできるセクションを指定し、ホスト CPU とコプロセッサー間でデータ転送を行っています。コンパイラーは、ホスト CPU とコプロセッサーの両方で実行するようにコードをコンパイルします。コンパイラー・オプションを使用して、CPU のみで実行するように同じソースコードをコンパイルすることもできます。
ソースコードをコンパイルしてホスト CPU とコプロセッサーの両方で実行するアプリケーションを生成する
動作中のコプロセッサーがあるかどうか判断して動作中のコプロセッサーの数を特定するソースコードを確認する
同じソースコードをコンパイルしてホスト CPU でのみ実行するアプリケーションを生成する