Skip to content

ROCm support updates #489

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 84 additions & 19 deletions docs/site_specific_config/rocm.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Overview of ROCm Ecosystem (v6.4.1-20250616)
# Overview of ROCm Ecosystem (v6.4.1-20250620)

!!! warning "Work-in-progress"
This document is a work-in-progress.
It may still contain inaccuracies or mistakes.

This overview is being created in the context of adding support for ROCm to EESSI, the European Environment for Scientific Software Installations (<https://eessi.io>).

*Last update: 16 Jun 2025*
*Last update: 20 Jun 2025*

[Jump to Overview](#Introduction) | [Jump to ABC](#ABC-of-ROCm) | [Jump to Changelog](#Changelog)

Expand Down Expand Up @@ -331,17 +331,20 @@ The "roc" variants like rocFFT are AMD's native implementations optimized specif

### ML/DL Frameworks

* MIGraphX: Graph optimization engine ([Github](https://github.com/ROCm/AMDMIGraphX))
* MIOpen: Deep learning primitives library ([Github](https://github.com/ROCm/MIOpen))
* ROCm PyTorch: PyTorch support for AMD GPUs ([Github](https://github.com/ROCm/pytorch))
* ROCm TensorFlow: TensorFlow support for AMD GPUs ([Github](https://github.com/ROCm/tensorflow-upstream))

### Communication Libraries

* RCCL: Communication library for multi-GPU/multi-node training ([Github](https://github.com/ROCm/rccl))
* rocPRIM: Provides parallel primitives used to develop GPU-accelerated code ([Github](https://github.com/ROCm/rocPRIM))

### Marshalling Libraries

* hipBLAS ([Github](https://github.com/ROCm/hipBLAS))
* hipCUB ([Github](https://github.com/ROCm/hipCUB))
* hipFFT ([Github](https://github.com/ROCm/hipFFT))
* hipRAND ([Github](https://github.com/ROCm/hipRAND))
* hipSOLVER ([Github](https://github.com/ROCm/hipSOLVER))
Expand All @@ -358,50 +361,107 @@ graph LR;
roctracer[ROC Tracer]
end
subgraph Libraries and Frameworks
hipblaslt[hipBLASLt]
hipsparselt[hipSPARSELt]
rocblas[rocBLAS]
rocfft[rocFFT]
rocrand[rocRAND]
rocblas[rocBLAS]
rocsparse[rocSPARSE]
rocsolver[rocSOLVER]
hipblaslt[hipBLASLt]
hipsparselt[hipSPARSELt]
rocsparse[rocSPARSE]
migraphx[MIGraphX]
miopen[MIOpen]
rccl[RCCL]
rocprim[rocPRIM]
hipblas[hipBLAS]
hipcub[hipCUB]
hipfft[hipFFT]
hiprand[hipRAND]
hipblas[hipBLAS]
hipsparse[hipSPARSE]
hipsolver[hipSOLVER]
hipsparse[hipSPARSE]
end

rocfft --> rocmstack
rocrand --> rocmstack
rocblas --> rocmstack
rocsparse --> rocmstack
rocsolver --> rocmstack
rocsolver --> rocblas
hipblaslt --> rocmstack
hipblaslt --> roctracer
hipsparselt --> rocmstack
hipsparselt --> roctracer
hipsparselt --> hipsparse
rocblas --> rocmstack
rocfft --> rocmstack
rocrand --> rocmstack
rocsolver --> rocmstack
rocsolver --> rocblas
rocsparse --> rocmstack

migraphx --> rocmstack
migraphx --> miopen
migraphx --> rocblas
miopen --> rocmstack
miopen --> rocblas
miopen --> hipblaslt
miopen --> rocblas
miopen --> hipblas

rccl --> rocmstack
rocprim --> rocmstack

hipfft --> rocfft
hiprand --> rocrand
hipblas --> rocblas
hipblas --> rocsparse
hipblas --> rocsolver
hipsparse --> rocsparse
hipblas --> rocsparse
hipcub --> rocprim
hipfft --> rocfft
hiprand --> rocrand
hipsolver --> rocsolver
hipsparse --> rocsparse
```

## Case Studies

For some commonly used software we examined the ROCm dependencies to make our overview more comprehensive.
Specifically, we examined which ROCm libraries and frameworks they depended on.
Below you can find a list of dependencies for each case study.

### PyTorch ROCm Dependencies

* HIP
* hipBLAS
* hipBLASLt
* hipFFT
* hipRAND
* hipSOLVER
* hipSPARSE
* hipSPARSELt
* MIOpen
* ROCm-LLVM
* ROCm-SMI
* rocBLAS
* rocFFT
* rocRAND
* rocSOLVER
* roc-tracer

### TensorFlow ROCm Dependencies

* HIP
* hipBLAS
* hipCUB
* hipFFT
* hipRAND
* hipSOLVER
* hipSPARSE
* MIGraphX
* MIOpen
* RCCL
* rocBLAS
* rocFFT
* rocPRIM
* rocRAND
* rocSOLVER

### GROMACS ROCm Dependencies

* HIP
* ROCm-LLVM
* rocFFT

## Compatibility Policies {: #Compatibility-Policies }

[Source](https://rocm.docs.amd.com/en/latest/compatibility/compatibility-matrix.html)
Expand Down Expand Up @@ -579,3 +639,8 @@ Vega refers to AMD's GPU architecture that was one of the first to fully support
* fixed dev tools dependencies graph
* sorted libraries
* removed the big dependencies graph in favour of dedicated ones

## v.6.4.1-20250620
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## v.6.4.1-20250620
## v6.4.1-20250620


* added the MIGraphX, rocPRIM, hipCUB libraries
* added case studies for PyTorch, TensorFlow, GROMACS