CUDAtoAMD
An early, open interoperability project for assessing and incrementally adapting CUDA-oriented source workloads to AMD's HIP/ROCm ecosystem.

Type
Tech stack
Connected services
Documentation
Full
Setup, architecture, and how the pieces fit together.
Maintenance
Occasional
Occasional fixes, but no active roadmap.
Description
CUDA-to-AMD Compatibility Runtime
Assess CUDA-oriented workloads, compile supported source paths, and execute native AMD code through HIP/ROCm—without pretending an AMD GPU is an NVIDIA GPU.
CUDAtoAMD is an open, clean-room developer runtime for incrementally adapting supported CUDA-oriented source workflows to AMD's HIP/ROCm ecosystem. It offers a CUDA-facing host API subset, an explicit native AMD runtime, bounded source/PTX compilation paths, diagnostic tooling, and conservative wheel admission checks.
[!WARNING] CUDAtoAMD is experimental. It is not a universal CUDA replacement and does not run arbitrary CUDA binaries, CUDA-locked Python wheels, or full CUDA frameworks unchanged. Unsupported behavior is reported explicitly rather than silently emulated.
What is in v1.4.0
- Native HIP device initialization that reports the selected AMD GPU truthfully and can run a numerical GPU self-test.
- Clean-room CUDA Runtime and Driver API compatibility subsets, plus explicit AMD C/C++ APIs for streams, pools, events and HSACO modules.
- A bounded CUDA-syntax and PTX compilation route to AMD code objects through HIP tools.
- FP32/mixed-precision GEMM subsets, optional C2C FFT, selected neural operators, graph capture/replay, and explicit Python bindings.
- CUDA source inventory, toolchain discovery, wheel preflight, release validation and a GitHub Pages project site.
Why this exists
CUDA-oriented codebases often mix portable host logic with NVIDIA-specific APIs, build tools, libraries and binary assumptions. HIPIFY is valuable for source migration, but it is not a drop-in runtime for every source tree or prebuilt application. CUDAtoAMD focuses on the boundary developers can inspect and verify:
The project does not spoof nvidia-smi, fabricate an NVIDIA compute capability, redistribute NVIDIA DLLs, or claim that AMD hardware is CUDA hardware. It aims to make the supported route practical and diagnosable for local developers.
Start here
FAQ
- What do I need to run this?
- An AMD GPU with ROCm support and Python. CUDAtoAMD is a runtime for adapting CUDA workloads to AMD hardware, not a universal CUDA replacement. If your code uses unsupported CUDA APIs or prebuilt CUDA wheels, this will not run it unchanged.
- What is the tech stack?
- Python. The runtime wraps HIP/ROCm and provides CUDA API subsets and PTX compilation paths. You work with Python bindings; the underlying C/C++ APIs are exposed for streams, pools, events, and modules.
- What is included in v1.4.0?
- Native HIP device initialization, CUDA Runtime and Driver API compatibility subsets, bounded CUDA-to-AMD compilation, FP32 and mixed-precision GEMM, optional FFT, selected neural operators, graph capture/replay, and diagnostic tooling. Source inventory, toolchain discovery, and wheel preflight checks are included.
- What is not included?
- This is not a drop-in CUDA replacement. It does not run arbitrary CUDA binaries, CUDA-locked wheels, or full frameworks unchanged. It does not spoof nvidia-smi or claim AMD hardware is CUDA hardware. Unsupported behavior is reported explicitly.
- What documentation is available?
- Basic documentation is included. The project is experimental and open-source, with a GitHub Pages site and diagnostic tooling to help you assess whether your workload is supported.
Domains
Seller
Reviews
No reviews yet.
