ROCm/ROCm-docker
Dockerfiles for the various software layers defined in the ROCm software platform
解決する問題
Docker コンテナには Linux カーネルが含まれておらず、ホストのカーネルを共有します。ROCm コンピュートスタックでは、ホストマシンに特別なカーネルドライバー(ROCK-Kernel-Driver)をインストールする必要があります。ROCm-docker は、他のすべての ROCm ソフトウェアレイヤーを Docker イメージにパッケージ化する方法を提供し、毎回すべてのコンポーネントを手動で組み立てることなく、コンテナ内で ROCm アプリケーションを実行できるようにします。
仕組み
このリポジトリには、テンプレートファイルから Dockerfile を生成するセットアップスクリプト(setup.sh)が含まれています。このスクリプトでは、事前ビルド済みパッケージ(repo.radeon.com から)から ROCm をインストールするか、ソースからビルドするかを選択でき、Ubuntu ベースイメージのバージョン、デバッグフラグの設定なども選択できます。スクリプト実行後、各サブディレクトリには特定の ROCm レイヤー用のイメージを構築するための Dockerfile が含まれます。このプロジェクトはまた、Docker Compose を使用して複数のコンテナを調整し、デバイスフラグ(GPU アクセスなど)を記憶します。Docker Hub には、クイックスタート用の rocm/rocm-terminal というすぐに使えるイメージがあります。
対象読者
これは、開発、テスト、またはデプロイのために、Docker コンテナ内で ROCm(AMD の GPU コンピュートスタック)を実行したい開発者やユーザー向けです。Docker と Linux コマンドにある程度精通していることを前提としています。セットアップガイドと asciicast デモは、初心者が始めるのに役立ちます。
ハイライト
- テンプレートからカスタマイズ可能な Dockerfile を生成するセットアップスクリプトを提供(Ubuntu バージョン、ソースビルド、デバッグフラグなどのオプション付き)。
- 2 つのインストールパスをサポート:ROCm apt/rpm リポジトリからバイナリを取得(イメージが小さく、ビルドが速い)またはソースからコンパイル(柔軟性は高いが遅い)。
- Docker Compose を使用してマルチコンテナ設定を管理し、GPU デバイスフラグを記憶。
- Docker Hub で事前ビルド済みの rocm/rocm-terminal イメージを提供し、クイックスタートを可能に。
- ターミナルコンテナにパスワードなしの sudo を持つ便利な非 root ユーザー 'rocm-user' を含み、必要に応じてセキュリティを強化する手順も提供。
- FAQ では、apt メタデータの欠落、Docker 権限エラー、コンテナへの/からのファイルコピー、コンテナをイメージにコミットして作業を保存するなどの一般的な問題に対応。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト