awesome-rocm-autodrive-training is a collection of autonomous driving model training examples adapted and optimized for AMD GPUs using the ROCm platform.
This project provides an out-of-the-box (OOTB) training experience through ROCm-compatible MMCV, prebuilt Docker environments, and a wide range of real-world autonomous driving model examples.
- ✅ Out-of-the-box training experience on AMD ROCm GPUs
- 🛠️ Patched MMCV with full ROCm compatibility and performance fixes
- 🐳 Ready-to-use Docker environment and image
- 🧩 Diverse training examples across major autonomous driving tasks
- ⚡ ROCm-specific performance optimizations in selected models
awesome-rocm-autodrive-training/
├── docker/ # Dockerfile and prebuilt ROCm training environment
├── examples/ # Training examples for various AD tasks
│ ├── backbone/ # Backbone networks (e.g., ResNet50, EfficientNet)
│ ├── 3d_detection/ # 2D/3D object detection (e.g., PointPillars)
│ ├── prediction/ # Prediction models (e.g., QCNet)
│ ├── bev/ # BEV perception models (e.g., BEVFormer)
│ ├── mapping/ # HD map construction models (e.g., MapTR)
│ ├── occupancy/ # Occupancy prediction (e.g., FlashOcc, SurroundOcc)
│ ├── end2end/ # End-to-end driving pipelines (e.g., UniAD)
├── mmcv/ # ROCm-adapted mmcv source code
├── tools/ # Utility scripts for benchmarking/tuning
└── README.md
git clone https://github.com/AMD-AGI/awesome-rocm-autodrive.git
cd awesome-rocm-autodrivecd docker
docker build -t rocm-autodrive .or directly pull the docker image provided by AMD:
docker pull amdagi/autodrive_training_rocm6.4:v1 build mmcv (optional)
If you want to build mmcv separately, just
MMCV_WITH_OPS=1 pip install .docker run --rm -it --ipc=host --network=host \
--device=/dev/kfd --device=/dev/dri \
--group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined \
-v $PWD:/workspace \
rocm-autodrivegit clone the repo link provided in README, repare dataset, and run as corresponding readme.
We are actively expanding the coverage of this project. Upcoming efforts include:
- ✅ More Models: Support for popular/SOTA models such as DeepAccident, and end-to-end transformer-based planners.
- 🔍 Performance Benchmarking: Add ROCm vs CUDA training benchmark results across all models.
- 🧠 FP8 & Mixed Precision Training: Explore FP8/BF16 optimization on MI300X GPUs.
- 🤝 Upstream Collaboration: Work with upstream repos to upstream ROCm compatibility patches and improvements.
Have ideas or requests? Open an issue or start a discussion!
We welcome contributions from the community!
To contribute:
- Fork this repository.
- Clone your fork and create a feature branch.
- Make your changes and test them.
- Submit a pull request with a clear description.
When adding a new model:
- ✅ Include training scripts and a minimal README.
- ⚙️ Note any ROCm-specific patches or performance tips.
- 🧪 Validate functionality on at least one ROCm GPU (MI300X, MI325X, or MI355X).
- 📢 Consider submitting upstream patches for long-term compatibility.
This project is licensed under the MIT license. while some other examples in this library are with other licenses. See the full license text here: LICENSE