本ガイドは、インテル社の許可を得て iSUS (IA Software User Society) が作成した、https://ispc.github.io/ispc_for_xe.html (英語) で公開されている 2023年1月18日時点の『Intel® ISPC for Xe』の日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。
インテル® インプリシット SPMD プログラム・コンパイラー (インテル® ISPC) は、CPU と GPU 上で実行する SPMD (単一プログラム複数データ) プログラムを記述するためのコンパイラーです。
インテル® ISPC は、最新のインテル® GPU をサポートするため積極的に開発されています。GPU 向けのコンパイルは、ユーザーから見ると非常に簡単ですが、GPU で実行されるコードを管理するのは複雑になることがあります。開発者は、低レベル API である oneAPI レベルゼロを介して、利用可能な GPU デバイスや CPU と GPU 間のメモリー転送、コードの実行、および同期を管理できます。もう 1 つの可能性は、インテル® ISPC パッケージに含まれるインテル® ISPC ランタイム (インテル® ISPCRT) を使用して複雑な実行を管理し、CPU と GPU でタスクを実行する統一された抽象化を作成することです。
本ガイドでは、インテル® ISPC を最大限に活用してインテル® Xe アーキテクチャー向けにコンパイルする方法を詳しく説明します。
- インテル® ISPC を使用する
- 環境
- 基本的なコマンドライン・オプション
- インテル® ISPC ランタイム (インテル® ISPCRT)
- インテル® ISPCRT オブジェクト
- 実行モデル
- 設定
- インテル® ISPC プログラムのコンパイルと実行
- 言語の制約と既知の問題
- パフォーマンス
- GPU プログラミングのパフォーマンス・ガイド
- レジスター・プレッシャーを軽減
- コード分岐
- メモリー操作
- パフォーマンス解析ツール
- GPU プログラミングのパフォーマンス・ガイド
- 相互運用性
- よくある質問 (FAQ)
- SPIR-V* からアセンブリー・ファイルを生成する
- GPU をデバッグする