ROCm/rocm-examples

A collection of examples for the ROCm software stack

何を解決するか

このリポジトリは、ROCm と HIP への入門を支援する包括的なコード例のコレクションを提供します。基本機能から高度な GPU オンライン加速技術までカバーしており、CUDA から HIP への移行を検討している開発者や、AMD ハードウェアでの GPU プログラミングに初めて挑戦する開発者にとっての橋渡しとなります。

仕組み

プロジェクトは以下のカテゴリに分類された例で構成されています:

  • HIP-Basic: ランタイム機能(例:メモリ帯域幅、行列乗算、ストリーム)の自己完結型レシピ。
  • Applications: ビトニックソート、離散畳み込み、モンテカルロ法による $\pi$ 推定など、実世界のアルゴリズムの GPU 加速実装。
  • Libraries: ROCm ライブラリの高レベル機能を使用する例。
  • AI: Torch-MIGraphX を使用して量子化モデルを実行するための手順と例。
  • Systems: GPU ディレクトストレージ I/O(hipFile を通じて)を含む ROCm システムの例。
  • HIP-Doc: 公式 HIP ドキュメントに付随するコード例。

対象ユーザー

  • HIP を学び始める新しい ROCm ユーザー。
  • GPU 加速の高度な例を探している経験豊富な GPU 開発者。
  • 既存の NVIDIA ベースのコードを AMD GPU に移植したいCUDA 開発者(hipify などのツールを使用)。

主な特徴

  • クロスプラットフォーム対応:Linux および Windows(Visual Studio または CMake で)ビルド可能。
  • CUDA 互換性:ROCM_EXAMPLES_GPU_LANGUAGE オプションを使用して、HIP または CUDA プラットフォームの両方でコンパイル可能。
  • コンテナ化されたセットアップ:前提条件のインストールを簡素化する Dockerfiles を提供。
  • 広範なアルゴリズムカバレッジ:プレフィックス和、オプティカルフロー、Floyd-Warshall 最短経路など、一般的な GPU パターンの実装を含む。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト