No description
- Python 55%
- Dockerfile 30.5%
- Shell 14.5%
| workspace | ||
| buildimage.sh | ||
| compose.yml | ||
| Dockerfile | ||
| down.sh | ||
| in.sh | ||
| README.md | ||
| up.sh | ||
ROCm 5.7 + ROS 2 Humble + Ultralytics (YOLO) Docker Environment
AMD GPU (ROCm) 環境上で ROS 2 Humble と Ultralytics (YOLO) を安全に併用するための Docker 開発・実行環境です。
研究室の所有Raizenの事情により、GPUコア/アーキテクチャコード(gfx900)のマシンでの実行を想定しています。
構成概要
- ベースイメージ:
rocm/pytorch:rocm5.7_ubuntu22.04_py3.10_pytorch_2.0.1 - ROS 2: ROS 2 Humble (
ros-humble-ros-core,rclpy,sensor-msgs,cv-bridge) - GPU パススルー:
/dev/kfd,/dev/dri - ボリュームマウント: ホストの
./workspaceをコンテナの/workspaceへマウント
ファイル構成
Dockerfile: ROS 2 Humble パッケージおよび Python 依存ライブラリの定義compose.yml: コンテナ設定(GPUデバイス、各種環境変数、ボリューム割り当て)buildimage.sh: BuildKit を有効にして Docker イメージをビルドするスクリプトup.sh:RENDER_GIDとVIDEO_GIDを自動検出してコンテナを起動・入室するスクリプトdown.sh: コンテナを停止・削除するスクリプトin.sh: 稼働中のコンテナに入室するスクリプト
動作要件 (Prerequisites)
- GPU: AMD Radeon または Instinct シリーズ
- ドライバー: ROCm 5.x / 6.x ドライバがホスト側に正しくセットアップされていること
クローン & ビルド手順
リポジトリからクローン
git clone https://forgejo.ikko-lab.k.hosei.ac.jp/ikko/rocmros2.git
クリーンビルドする場合
cd rocmros2
./buildimage.sh
コンテナの起動
AMD GPU をコンテナ内で正常に認識させるため、/dev/kfd および /dev/dri デバイスと render グループ権限を付与して起動します。
docker compose base
./up.sh
docker run base
docker run -it \
--name rocmros2 \
--ipc=host \
--device=/dev/kfd:/dev/kfd:rwm \
--device=/dev/dri:/dev/dri:rwm \
--cap-add=SYS_PTRACE \
--security-opt seccomp=unconfined \
--group-add 110 \
--group-add 44 \
-e HSA_OVERRIDE_GFX_VERSION=9.0.0 \
-e HSA_ENABLE_SDMA=0 \
-e HSA_XNACK=0 \
-e ROCBLAS_DISABLE_ASM=1 \
-v "$(pwd)/workspace:/workspace" \
forgejo.ikko-lab.k.hosei.ac.jp/ikko/rocmros2:latest \
/bin/bash
動作確認 (Validation)
コンテナ内で以下の Python コマンドを実行し、ROCm PyTorch および Ultralytics が認識されているか確認します。
docker exec -it rocmros2 python3 -c "import torch, ultralytics; print('PyTorch Version:', torch.__version__); print('ROCm GPU Available:', torch.cuda.is_available()); print('Ultralytics Version:', ultralytics.__version__)"
PyTorch Version: 2.0.1+gita61a294
ROCm GPU Available: True
Ultralytics Version: 8.4.154