ROCm/HIPIFY
HIPIFY: Convert CUDA to Portable C++ Code
HIPIFYとは?
HIPIFYは、CUDA C++ソースコードをHIP (Heterogeneous‑Compute Interface for Portability) C++に自動的に変換するツールのコレクションです。CUDAコードをHIPに翻訳することで、開発者はNVIDIA GPUだけでなく、AMD GPU上でもGPU加速アプリケーションをより簡単に実行できるようになります。
主な機能
- CUDAからHIPへの翻訳 – メインツールである
hipify-clangは、CUDAソースファイルを解析し、同等のHIPコードを出力します。 - ドキュメント生成 –
hipify-clangは、HIPがサポートしているCUDA APIのMarkdownまたはCSVドキュメントを、異なる出力形式(full,strict,compact)で生成することも可能です。 - コマンドラインオプション –
--helpまたは--help-hiddenを使用してすべてのフラグをリスト表示できます。一般的なフラグには、Markdown出力用の--mdや、生成されるドキュメントのスタイルを制御する--doc-format/--doc-rocが含まれます。
ドキュメントをローカルでビルドする方法
cd docs
pip3 install -r .sphinx/requirements.txt
python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
これにより、HIPIFYドキュメントのブラウザで閲覧可能なHTML版が生成されます。
CUDAからHIPへのAPIリファレンスを生成する
# Full documentation (single combined file)
hipify-clang --md --doc-format=full --doc-roc=joint
# Or separate files per API group
hipify-clang --md --doc-format=full --doc-roc=separate
CSV出力を取得するには--mdを--csvに置き換えてください。また、--doc-formatをstrictまたはcompactに切り換えることで、より簡潔なリストを取得できます。
詳細情報の入手先
- 公式オンラインドキュメント: https://rocm.docs.amd.com/projects/HIPIFY/en/latest/index.html
- ドキュメントのソースコードは、リポジトリの
HIPIFY/docsディレクトリにあります。 - ROCmドキュメントへの貢献ガイドラインは、オンラインドキュメントからリンクされています。
結論: HIPIFYは、開発者がCUDAベースのGPUコードを移植性の高いHIPフレームワークに移植するのを支援し、AI、ML、およびその他のハイパフォーマンスコンピューティングワークロードにおけるベンダーを跨いだGPUサポートを容易にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト