mirror of
https://github.com/ROCm/ROCm.git
synced 2026-01-12 16:18:16 -05:00
Compare commits
3 Commits
pytorch_co
...
rocm-submo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
602cc00fd6 | ||
|
|
222963b85c | ||
|
|
96ccfcb026 |
@@ -89,8 +89,6 @@ jobs:
|
||||
-GNinja
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||
parameters:
|
||||
gpuTarget: ${{ job.target }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
|
||||
# parameters:
|
||||
@@ -124,8 +122,6 @@ jobs:
|
||||
registerROCmPackages: true
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||
parameters:
|
||||
gpuTarget: ${{ job.target }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||
parameters:
|
||||
@@ -151,3 +147,4 @@ jobs:
|
||||
environment: test
|
||||
gpuTarget: ${{ job.target }}
|
||||
registerROCmPackages: true
|
||||
optSymLink: true
|
||||
|
||||
251
.gitmodules
vendored
Normal file
251
.gitmodules
vendored
Normal file
@@ -0,0 +1,251 @@
|
||||
[submodule "submodule-srcs/ROCR-Runtime"]
|
||||
path = submodule-srcs/ROCR-Runtime
|
||||
url = https://github.com/rocm/ROCR-Runtime
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/amdsmi"]
|
||||
path = submodule-srcs/amdsmi
|
||||
url = https://github.com/rocm/amdsmi
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rdc"]
|
||||
path = submodule-srcs/rdc
|
||||
url = https://github.com/rocm/rdc
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocm_bandwidth_test"]
|
||||
path = submodule-srcs/rocm_bandwidth_test
|
||||
url = https://github.com/rocm/rocm_bandwidth_test
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocm_smi_lib"]
|
||||
path = submodule-srcs/rocm_smi_lib
|
||||
url = https://github.com/rocm/rocm_smi_lib
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocm-core"]
|
||||
path = submodule-srcs/rocm-core
|
||||
url = https://github.com/rocm/rocm-core
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocm-examples"]
|
||||
path = submodule-srcs/rocm-examples
|
||||
url = https://github.com/rocm/rocm-examples
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocminfo"]
|
||||
path = submodule-srcs/rocminfo
|
||||
url = https://github.com/rocm/rocminfo
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocprofiler"]
|
||||
path = submodule-srcs/rocprofiler
|
||||
url = https://github.com/rocm/rocprofiler
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocprofiler-register"]
|
||||
path = submodule-srcs/rocprofiler-register
|
||||
url = https://github.com/rocm/rocprofiler-register
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocprofiler-sdk"]
|
||||
path = submodule-srcs/rocprofiler-sdk
|
||||
url = https://github.com/rocm/rocprofiler-sdk
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocprofiler-compute"]
|
||||
path = submodule-srcs/rocprofiler-compute
|
||||
url = https://github.com/rocm/rocprofiler-compute
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocprofiler-systems"]
|
||||
path = submodule-srcs/rocprofiler-systems
|
||||
url = https://github.com/rocm/rocprofiler-systems
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/roctracer"]
|
||||
path = submodule-srcs/roctracer
|
||||
url = https://github.com/rocm/roctracer
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/HIP"]
|
||||
path = submodule-srcs/HIP
|
||||
url = https://github.com/rocm/HIP
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hip-tests"]
|
||||
path = submodule-srcs/hip-tests
|
||||
url = https://github.com/rocm/hip-tests
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/HIPIFY"]
|
||||
path = submodule-srcs/HIPIFY
|
||||
url = https://github.com/rocm/HIPIFY
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/clr"]
|
||||
path = submodule-srcs/clr
|
||||
url = https://github.com/rocm/clr
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipother"]
|
||||
path = submodule-srcs/hipother
|
||||
url = https://github.com/rocm/hipother
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/half"]
|
||||
path = submodule-srcs/half
|
||||
url = https://github.com/rocm/half
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/llvm-project"]
|
||||
path = submodule-srcs/llvm-project
|
||||
url = https://github.com/rocm/llvm-project
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/spirv-llvm-translator"]
|
||||
path = submodule-srcs/spirv-llvm-translator
|
||||
url = https://github.com/rocm/spirv-llvm-translator
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/ROCdbgapi"]
|
||||
path = submodule-srcs/ROCdbgapi
|
||||
url = https://github.com/rocm/ROCdbgapi
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/ROCgdb"]
|
||||
path = submodule-srcs/ROCgdb
|
||||
url = https://github.com/rocm/ROCgdb
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocr_debug_agent"]
|
||||
path = submodule-srcs/rocr_debug_agent
|
||||
url = https://github.com/rocm/rocr_debug_agent
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/AMDMIGraphX"]
|
||||
path = submodule-srcs/AMDMIGraphX
|
||||
url = https://github.com/rocm/AMDMIGraphX
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/MIOpen"]
|
||||
path = submodule-srcs/MIOpen
|
||||
url = https://github.com/rocm/MIOpen
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/MIVisionX"]
|
||||
path = submodule-srcs/MIVisionX
|
||||
url = https://github.com/rocm/MIVisionX
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/ROCmValidationSuite"]
|
||||
path = submodule-srcs/ROCmValidationSuite
|
||||
url = https://github.com/rocm/ROCmValidationSuite
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/Tensile"]
|
||||
path = submodule-srcs/Tensile
|
||||
url = https://github.com/rocm/Tensile
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/composable_kernel"]
|
||||
path = submodule-srcs/composable_kernel
|
||||
url = https://github.com/rocm/composable_kernel
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipBLAS-common"]
|
||||
path = submodule-srcs/hipBLAS-common
|
||||
url = https://github.com/rocm/hipBLAS-common
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipBLAS"]
|
||||
path = submodule-srcs/hipBLAS
|
||||
url = https://github.com/rocm/hipBLAS
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipBLASLt"]
|
||||
path = submodule-srcs/hipBLASLt
|
||||
url = https://github.com/rocm/hipBLASLt
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipCUB"]
|
||||
path = submodule-srcs/hipCUB
|
||||
url = https://github.com/rocm/hipCUB
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipFFT"]
|
||||
path = submodule-srcs/hipFFT
|
||||
url = https://github.com/rocm/hipFFT
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipRAND"]
|
||||
path = submodule-srcs/hipRAND
|
||||
url = https://github.com/rocm/hipRAND
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipSOLVER"]
|
||||
path = submodule-srcs/hipSOLVER
|
||||
url = https://github.com/rocm/hipSOLVER
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipSPARSE"]
|
||||
path = submodule-srcs/hipSPARSE
|
||||
url = https://github.com/rocm/hipSPARSE
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipSPARSELt"]
|
||||
path = submodule-srcs/hipSPARSELt
|
||||
url = https://github.com/rocm/hipSPARSELt
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipTensor"]
|
||||
path = submodule-srcs/hipTensor
|
||||
url = https://github.com/rocm/hipTensor
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/hipfort"]
|
||||
path = submodule-srcs/hipfort
|
||||
url = https://github.com/rocm/hipfort
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rccl"]
|
||||
path = submodule-srcs/rccl
|
||||
url = https://github.com/rocm/rccl
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocAL"]
|
||||
path = submodule-srcs/rocAL
|
||||
url = https://github.com/rocm/rocAL
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocALUTION"]
|
||||
path = submodule-srcs/rocALUTION
|
||||
url = https://github.com/rocm/rocALUTION
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocBLAS"]
|
||||
path = submodule-srcs/rocBLAS
|
||||
url = https://github.com/rocm/rocBLAS
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocDecode"]
|
||||
path = submodule-srcs/rocDecode
|
||||
url = https://github.com/rocm/rocDecode
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocJPEG"]
|
||||
path = submodule-srcs/rocJPEG
|
||||
url = https://github.com/rocm/rocJPEG
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocPyDecode"]
|
||||
path = submodule-srcs/rocPyDecode
|
||||
url = https://github.com/rocm/rocPyDecode
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocFFT"]
|
||||
path = submodule-srcs/rocFFT
|
||||
url = https://github.com/rocm/rocFFT
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocPRIM"]
|
||||
path = submodule-srcs/rocPRIM
|
||||
url = https://github.com/rocm/rocPRIM
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocRAND"]
|
||||
path = submodule-srcs/rocRAND
|
||||
url = https://github.com/rocm/rocRAND
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocSHMEM"]
|
||||
path = submodule-srcs/rocSHMEM
|
||||
url = https://github.com/rocm/rocSHMEM
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocSOLVER"]
|
||||
path = submodule-srcs/rocSOLVER
|
||||
url = https://github.com/rocm/rocSOLVER
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocSPARSE"]
|
||||
path = submodule-srcs/rocSPARSE
|
||||
url = https://github.com/rocm/rocSPARSE
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocThrust"]
|
||||
path = submodule-srcs/rocThrust
|
||||
url = https://github.com/rocm/rocThrust
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocWMMA"]
|
||||
path = submodule-srcs/rocWMMA
|
||||
url = https://github.com/rocm/rocWMMA
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rocm-cmake"]
|
||||
path = submodule-srcs/rocm-cmake
|
||||
url = https://github.com/rocm/rocm-cmake
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/rpp"]
|
||||
path = submodule-srcs/rpp
|
||||
url = https://github.com/rocm/rpp
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/TransferBench"]
|
||||
path = submodule-srcs/TransferBench
|
||||
url = https://github.com/rocm/TransferBench
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/openmp-extras/aomp"]
|
||||
path = submodule-srcs/openmp-extras/aomp
|
||||
url = https://github.com/rocm/aomp
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/openmp-extras/aomp-extras"]
|
||||
path = submodule-srcs/openmp-extras/aomp-extras
|
||||
url = https://github.com/rocm/aomp-extras
|
||||
branch = release/rocm-rel-6.4
|
||||
[submodule "submodule-srcs/ROCK-Kernel-Driver"]
|
||||
path = submodule-srcs/ROCK-Kernel-Driver
|
||||
url = https://github.com/rocm/ROCK-Kernel-Driver
|
||||
44
README.md
44
README.md
@@ -20,12 +20,17 @@ source software compilers, debuggers, and libraries. ROCm is fully integrated in
|
||||
(ML) frameworks, such as PyTorch and TensorFlow.
|
||||
|
||||
## Getting the ROCm Source Code
|
||||
AMD ROCm is built from open source software. It is, therefore, possible to modify the various components of ROCm by downloading the source code and rebuilding the components. AMD ROCm is built from open source software. It is, therefore, possible to modify the various components of ROCm by downloading the source code and rebuilding the components. The source code for ROCm components can be cloned from each of the GitHub repositories using git.
|
||||
|
||||
AMD ROCm is built from open source software. It is, therefore, possible to modify the various components of ROCm by downloading the source code and rebuilding the components. The source code for ROCm components can be cloned from each of the GitHub repositories using git. For easy access to download the correct versions of each of these tools, the ROCm repository contains a repo manifest file called [default.xml](./default.xml). You can use this manifest file to download the source code for ROCm software.
|
||||
There are two methods to clone/sync the ROCm sources. you can use either of the methods to sync the ROCm Sources
|
||||
|
||||
## [Method 1]
|
||||
|
||||
For easy access to download the correct versions of each of these tools, the ROCm repository contains a repo manifest file called [default.xml](./default.xml). You can use this manifest file to download the source code for ROCm software.
|
||||
|
||||
### Installing the repo tool
|
||||
|
||||
The repo tool from Google allows you to manage multiple git repositories simultaneously. Run the following commands to install the repo tool:
|
||||
We need the repo tool to work with the manifest file. The repo tool from Google allows you to manage multiple git repositories simultaneously. Run the following commands to install the repo tool:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/bin/
|
||||
@@ -43,11 +48,12 @@ Some ROCm projects use the Git Large File Storage (LFS) format that may require
|
||||
sudo apt-get install git-lfs
|
||||
```
|
||||
|
||||
### Downloading the ROCm source code
|
||||
|
||||
The following example shows how to use the repo tool to download the ROCm source code. If you choose a directory other than ~/bin/ to install the repo tool, you must use that chosen directory in the code as shown below:
|
||||
|
||||
```bash
|
||||
# --------------------------------------
|
||||
# Step1: clone source code
|
||||
# --------------------------------------
|
||||
mkdir -p ~/ROCm/
|
||||
cd ~/ROCm/
|
||||
export ROCM_VERSION=6.4.0
|
||||
@@ -57,29 +63,35 @@ export ROCM_VERSION=6.4.0
|
||||
|
||||
**Note:** Using this sample code will cause the repo tool to download the open source code associated with the specified ROCm release. Ensure that you have ssh-keys configured on your machine for your GitHub ID prior to the download as explained at [Connecting to GitHub with SSH](https://docs.github.com/en/authentication/connecting-to-github-with-ssh).
|
||||
|
||||
## Building the ROCm source code
|
||||
|
||||
## [Method 2]
|
||||
|
||||
This repository contains the source code for ROCm. Below you will find instructions for cloning the repository using submodules as an alternative to using the `repo` tool.
|
||||
|
||||
## Cloning with Git Submodules
|
||||
|
||||
As an alternative method, you can clone this repository and its submodules using Git's submodule functionality. This approach may be preferred if you are familiar with Git and wish to avoid using the `repo` tool.
|
||||
|
||||
To clone the repository along with all its submodules, use the following command:
|
||||
|
||||
```bash
|
||||
# --------------------------------------
|
||||
# Step1: clone source code
|
||||
# --------------------------------------
|
||||
git clone --recurse-submodules --remote-submodules https://github.com/ROCm/ROCm.git
|
||||
cd ROCm/submodule-srcs
|
||||
```
|
||||
|
||||
Each ROCm component repository contains directions for building that component, such as the rocSPARSE documentation [Installation and Building for Linux](https://rocm.docs.amd.com/projects/rocSPARSE/en/latest/install/Linux_Install_Guide.html). Refer to the specific component documentation for instructions on building the repository.
|
||||
|
||||
Each release of the ROCm software supports specific hardware and software configurations. Refer to [System requirements (Linux)](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html) for the current supported hardware and OS.
|
||||
|
||||
## Build ROCm from source
|
||||
|
||||
The Build will use as many processors as it can find to build in parallel. Some of the compiles can consume as much as 10GB of RAM, so make sure you have plenty of Swap Space !
|
||||
|
||||
By default the ROCm build will compile for all supported GPU architectures and will take approximately 500 CPU hours.
|
||||
The Build time will reduce significantly if we limit the GPU Architecture/s against which we need to build by using the environment variable GPU_ARCHS as mentioned below.
|
||||
|
||||
```bash
|
||||
# --------------------------------------
|
||||
# Step1: clone source code
|
||||
# --------------------------------------
|
||||
|
||||
mkdir -p ~/WORKSPACE/ # Or any folder name other than WORKSPACE
|
||||
cd ~/WORKSPACE/
|
||||
export ROCM_VERSION=6.4.0
|
||||
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.4.x -m tools/rocm-build/rocm-${ROCM_VERSION}.xml
|
||||
~/bin/repo sync
|
||||
|
||||
# --------------------------------------
|
||||
# Step 2: Prepare build environment
|
||||
|
||||
@@ -21,68 +21,31 @@ release cycles for PyTorch on ROCm:
|
||||
|
||||
- ROCm PyTorch release:
|
||||
|
||||
- Provides the latest version of ROCm but might not necessarily support the
|
||||
latest stable PyTorch version.
|
||||
- Provides the latest version of ROCm but doesn't immediately support the latest stable PyTorch
|
||||
version.
|
||||
|
||||
- Offers :ref:`Docker images <pytorch-docker-compat>` with ROCm and PyTorch
|
||||
preinstalled.
|
||||
pre-installed.
|
||||
|
||||
- ROCm PyTorch repository: `<https://github.com/ROCm/pytorch>`_
|
||||
|
||||
- See the :doc:`ROCm PyTorch installation guide <rocm-install-on-linux:install/3rd-party/pytorch-install>`
|
||||
to get started.
|
||||
- See the :doc:`ROCm PyTorch installation guide <rocm-install-on-linux:install/3rd-party/pytorch-install>` to get started.
|
||||
|
||||
- Official PyTorch release:
|
||||
|
||||
- Provides the latest stable version of PyTorch but might not necessarily
|
||||
support the latest ROCm version.
|
||||
- Provides the latest stable version of PyTorch but doesn't immediately support the latest ROCm version.
|
||||
|
||||
- Official PyTorch repository: `<https://github.com/pytorch/pytorch>`_
|
||||
|
||||
- See the `Nightly and latest stable version installation guide <https://pytorch.org/get-started/locally/>`_
|
||||
or `Previous versions <https://pytorch.org/get-started/previous-versions/>`_
|
||||
to get started.
|
||||
or `Previous versions <https://pytorch.org/get-started/previous-versions/>`_ to get started.
|
||||
|
||||
PyTorch includes tooling that generates HIP source code from the CUDA backend.
|
||||
This approach allows PyTorch to support ROCm without requiring manual code
|
||||
modifications. For more information, see :doc:`HIPIFY <hipify:index>`.
|
||||
The upstream PyTorch includes an automatic HIPification solution that automatically generates HIP
|
||||
source code from the CUDA backend. This approach allows PyTorch to support ROCm without requiring
|
||||
manual code modifications.
|
||||
|
||||
ROCm development is aligned with the stable release of PyTorch, while upstream
|
||||
PyTorch testing uses the stable release of ROCm to maintain consistency.
|
||||
|
||||
.. _pytorch-recommendations:
|
||||
|
||||
Use cases and recommendations
|
||||
================================================================================
|
||||
|
||||
* :doc:`Using ROCm for AI: training a model </how-to/rocm-for-ai/training/benchmark-docker/pytorch-training>`
|
||||
guides how to leverage the ROCm platform for training AI models. It covers the
|
||||
steps, tools, and best practices for optimizing training workflows on AMD GPUs
|
||||
using PyTorch features.
|
||||
|
||||
* :doc:`Single-GPU fine-tuning and inference </how-to/rocm-for-ai/fine-tuning/single-gpu-fine-tuning-and-inference>`
|
||||
describes and demonstrates how to use the ROCm platform for the fine-tuning
|
||||
and inference of machine learning models, particularly large language models
|
||||
(LLMs), on systems with a single GPU. This topic provides a detailed guide for
|
||||
setting up, optimizing, and executing fine-tuning and inference workflows in
|
||||
such environments.
|
||||
|
||||
* :doc:`Multi-GPU fine-tuning and inference optimization </how-to/rocm-for-ai/fine-tuning/multi-gpu-fine-tuning-and-inference>`
|
||||
describes and demonstrates the fine-tuning and inference of machine learning
|
||||
models on systems with multiple GPUs.
|
||||
|
||||
* The :doc:`Instinct MI300X workload optimization guide </how-to/rocm-for-ai/inference-optimization/workload>`
|
||||
provides detailed guidance on optimizing workloads for the AMD Instinct MI300X
|
||||
accelerator using ROCm. This guide helps users achieve optimal performance for
|
||||
deep learning and other high-performance computing tasks on the MI300X
|
||||
accelerator.
|
||||
|
||||
* The :doc:`Inception with PyTorch documentation </conceptual/ai-pytorch-inception>`
|
||||
describes how PyTorch integrates with ROCm for AI workloads It outlines the
|
||||
use of PyTorch on the ROCm platform and focuses on efficiently leveraging AMD
|
||||
GPU hardware for training and inference tasks in AI applications.
|
||||
|
||||
For more use cases and recommendations, see `ROCm PyTorch blog posts <https://rocm.blogs.amd.com/blog/tag/pytorch.html>`_.
|
||||
Development of ROCm is aligned with the stable release of PyTorch while upstream PyTorch testing uses
|
||||
the stable release of ROCm to maintain consistency.
|
||||
|
||||
.. _pytorch-docker-compat:
|
||||
|
||||
@@ -93,10 +56,10 @@ Docker image compatibility
|
||||
|
||||
<i class="fab fa-docker"></i>
|
||||
|
||||
AMD validates and publishes `PyTorch images <https://hub.docker.com/r/rocm/pytorch>`_
|
||||
with ROCm backends on Docker Hub. The following Docker image tags and associated
|
||||
inventories were tested on `ROCm 6.4.0 <https://repo.radeon.com/rocm/apt/6.4/>`_.
|
||||
Click |docker-icon| to view the image on Docker Hub.
|
||||
AMD validates and publishes ready-made `PyTorch images <https://hub.docker.com/r/rocm/pytorch>`_
|
||||
with ROCm backends on Docker Hub. The following Docker image tags and
|
||||
associated inventories are validated for `ROCm 6.4.0 <https://repo.radeon.com/rocm/apt/6.4/>`_.
|
||||
Click the |docker-icon| icon to view the image on Docker Hub.
|
||||
|
||||
.. list-table:: PyTorch Docker image components
|
||||
:header-rows: 1
|
||||
@@ -249,12 +212,13 @@ Click |docker-icon| to view the image on Docker Hub.
|
||||
- `4.0.3 <https://github.com/open-mpi/ompi/tree/v4.0.3>`_
|
||||
- `5.3-1.0.5.0 <https://content.mellanox.com/ofed/MLNX_OFED-5.3-1.0.5.0/MLNX_OFED_LINUX-5.3-1.0.5.0-ubuntu20.04-x86_64.tgz>`_
|
||||
|
||||
Key ROCm libraries for PyTorch
|
||||
Critical ROCm libraries for PyTorch
|
||||
================================================================================
|
||||
|
||||
PyTorch functionality on ROCm is determined by its underlying library
|
||||
dependencies. These ROCm components affect the capabilities, performance, and
|
||||
feature set available to developers.
|
||||
The functionality of PyTorch with ROCm is determined by its underlying library
|
||||
dependencies. These critical ROCm components affect the capabilities,
|
||||
performance, and feature set available to developers. The versions described
|
||||
are available in ROCm :version:`rocm_version`.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
@@ -274,23 +238,24 @@ feature set available to developers.
|
||||
- :version-ref:`hipBLAS rocm_version`
|
||||
- Provides GPU-accelerated Basic Linear Algebra Subprograms (BLAS) for
|
||||
matrix and vector operations.
|
||||
- Supports operations such as matrix multiplication, matrix-vector
|
||||
products, and tensor contractions. Utilized in both dense and batched
|
||||
linear algebra operations.
|
||||
- Supports operations like matrix multiplication, matrix-vector products,
|
||||
and tensor contractions. Utilized in both dense and batched linear
|
||||
algebra operations.
|
||||
* - `hipBLASLt <https://github.com/ROCm/hipBLASLt>`_
|
||||
- :version-ref:`hipBLASLt rocm_version`
|
||||
- hipBLASLt is an extension of the hipBLAS library, providing additional
|
||||
features like epilogues fused into the matrix multiplication kernel or
|
||||
use of integer tensor cores.
|
||||
- Accelerates operations such as ``torch.matmul``, ``torch.mm``, and the
|
||||
- It accelerates operations like ``torch.matmul``, ``torch.mm``, and the
|
||||
matrix multiplications used in convolutional and linear layers.
|
||||
* - `hipCUB <https://github.com/ROCm/hipCUB>`_
|
||||
- :version-ref:`hipCUB rocm_version`
|
||||
- Provides a C++ template library for parallel algorithms for reduction,
|
||||
scan, sort and select.
|
||||
- Supports operations such as ``torch.sum``, ``torch.cumsum``,
|
||||
``torch.sort`` irregular shapes often involve scanning, sorting, and
|
||||
filtering, which hipCUB handles efficiently.
|
||||
- Supports operations like ``torch.sum``, ``torch.cumsum``, ``torch.sort``
|
||||
and ``torch.topk``. Operations on sparse tensors or tensors with
|
||||
irregular shapes often involve scanning, sorting, and filtering, which
|
||||
hipCUB handles efficiently.
|
||||
* - `hipFFT <https://github.com/ROCm/hipFFT>`_
|
||||
- :version-ref:`hipFFT rocm_version`
|
||||
- Provides GPU-accelerated Fast Fourier Transform (FFT) operations.
|
||||
@@ -298,8 +263,8 @@ feature set available to developers.
|
||||
* - `hipRAND <https://github.com/ROCm/hipRAND>`_
|
||||
- :version-ref:`hipRAND rocm_version`
|
||||
- Provides fast random number generation for GPUs.
|
||||
- The ``torch.rand``, ``torch.randn``, and stochastic layers like
|
||||
``torch.nn.Dropout`` rely on hipRAND.
|
||||
- The ``torch.rand``, ``torch.randn`` and stochastic layers like
|
||||
``torch.nn.Dropout``.
|
||||
* - `hipSOLVER <https://github.com/ROCm/hipSOLVER>`_
|
||||
- :version-ref:`hipSOLVER rocm_version`
|
||||
- Provides GPU-accelerated solvers for linear systems, eigenvalues, and
|
||||
@@ -370,7 +335,7 @@ feature set available to developers.
|
||||
- :version-ref:`RPP rocm_version`
|
||||
- Speeds up data augmentation, transformation, and other preprocessing steps.
|
||||
- Easy to integrate into PyTorch's ``torch.utils.data`` and
|
||||
``torchvision`` data load workloads to speed up data processing.
|
||||
``torchvision`` data load workloads.
|
||||
* - `rocThrust <https://github.com/ROCm/rocThrust>`_
|
||||
- :version-ref:`rocThrust rocm_version`
|
||||
- Provides a C++ template library for parallel algorithms like sorting,
|
||||
@@ -387,11 +352,11 @@ feature set available to developers.
|
||||
involve matrix products, such as ``torch.matmul``, ``torch.bmm``, and
|
||||
more.
|
||||
|
||||
Supported features
|
||||
Supported and unsupported features
|
||||
================================================================================
|
||||
|
||||
This section maps GPU-accelerated PyTorch features to their supported ROCm and
|
||||
PyTorch versions.
|
||||
The following section maps GPU-accelerated PyTorch features to their supported
|
||||
ROCm and PyTorch versions.
|
||||
|
||||
torch
|
||||
--------------------------------------------------------------------------------
|
||||
@@ -399,24 +364,23 @@ torch
|
||||
`torch <https://pytorch.org/docs/stable/index.html>`_ is the central module of
|
||||
PyTorch, providing data structures for multi-dimensional tensors and
|
||||
implementing mathematical operations on them. It also includes utilities for
|
||||
efficient serialization of tensors and arbitrary data types and other tools.
|
||||
efficient serialization of tensors and arbitrary data types, along with various
|
||||
other tools.
|
||||
|
||||
Tensor data types
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The tensor data type is specified using the ``dtype`` attribute or argument.
|
||||
PyTorch supports many data types for different use cases.
|
||||
The data type of a tensor is specified using the ``dtype`` attribute or argument, and PyTorch supports a wide range of data types for different use cases.
|
||||
|
||||
The following table lists `torch.Tensor <https://pytorch.org/docs/stable/tensors.html>`_
|
||||
single data types:
|
||||
The following table lists `torch.Tensor <https://pytorch.org/docs/stable/tensors.html>`_'s single data types:
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Data type
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - ``torch.float8_e4m3fn``
|
||||
- 8-bit floating point, e4m3
|
||||
- 2.3
|
||||
@@ -508,11 +472,11 @@ single data types:
|
||||
|
||||
.. note::
|
||||
|
||||
Unsigned types except ``uint8`` have limited support in eager mode. They
|
||||
primarily exist to assist usage with ``torch.compile``.
|
||||
Unsigned types aside from ``uint8`` are currently only have limited support in
|
||||
eager mode (they primarily exist to assist usage with ``torch.compile``).
|
||||
|
||||
See :doc:`ROCm precision support <rocm:reference/precision-support>` for the
|
||||
native hardware support of data types.
|
||||
The :doc:`ROCm precision support page <rocm:reference/precision-support>`
|
||||
collected the native HW support of different data types.
|
||||
|
||||
torch.cuda
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@@ -527,8 +491,8 @@ leveraging ROCm and CUDA as the underlying frameworks.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - Device management
|
||||
- Utilities for managing and interacting with GPUs.
|
||||
- 0.4.0
|
||||
@@ -602,8 +566,8 @@ PyTorch interacts with the ROCm or CUDA environment.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - ``cufft_plan_cache``
|
||||
- Manages caching of GPU FFT plans to optimize repeated FFT computations.
|
||||
- 1.7.0
|
||||
@@ -651,8 +615,8 @@ Supported ``torch`` options include:
|
||||
|
||||
* - Option
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - ``allow_tf32``
|
||||
- TensorFloat-32 tensor cores may be used in cuDNN convolutions on NVIDIA
|
||||
Ampere or newer GPUs.
|
||||
@@ -667,28 +631,28 @@ Supported ``torch`` options include:
|
||||
Automatic mixed precision: torch.amp
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
PyTorch automates the process of using both 16-bit (half-precision, float16) and
|
||||
32-bit (single-precision, float32) floating-point types in model training and
|
||||
inference.
|
||||
PyTorch that automates the process of using both 16-bit (half-precision,
|
||||
float16) and 32-bit (single-precision, float32) floating-point types in model
|
||||
training and inference.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - Autocasting
|
||||
- Autocast instances serve as context managers or decorators that allow
|
||||
- Instances of autocast serve as context managers or decorators that allow
|
||||
regions of your script to run in mixed precision.
|
||||
- 1.9
|
||||
- 2.5
|
||||
* - Gradient scaling
|
||||
- To prevent underflow, “gradient scaling” multiplies the network’s
|
||||
loss by a scale factor and invokes a backward pass on the scaled
|
||||
loss. The same factor then scales gradients flowing backward through
|
||||
the network. In other words, gradient values have a larger magnitude so
|
||||
that they don’t flush to zero.
|
||||
loss(es) by a scale factor and invokes a backward pass on the scaled
|
||||
loss(es). Gradients flowing backward through the network are then
|
||||
scaled by the same factor. In other words, gradient values have a
|
||||
larger magnitude, so they don’t flush to zero.
|
||||
- 1.9
|
||||
- 2.5
|
||||
* - CUDA op-specific behavior
|
||||
@@ -702,7 +666,7 @@ inference.
|
||||
Distributed library features
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
PyTorch distributed library includes a collective of parallelism modules, a
|
||||
The PyTorch distributed library includes a collective of parallelism modules, a
|
||||
communications layer, and infrastructure for launching and debugging large
|
||||
training jobs. See :ref:`rocm-for-ai-pytorch-distributed` for more information.
|
||||
|
||||
@@ -716,13 +680,13 @@ of computational resources and scalability for large-scale tasks.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - TensorPipe
|
||||
- A point-to-point communication library integrated into
|
||||
PyTorch for distributed training. It handles tensor data transfers
|
||||
efficiently between different processes or devices, including those on
|
||||
separate machines.
|
||||
PyTorch for distributed training. It is designed to handle tensor data
|
||||
transfers efficiently between different processes or devices, including
|
||||
those on separate machines.
|
||||
- 1.8
|
||||
- 5.4
|
||||
* - Gloo
|
||||
@@ -741,8 +705,8 @@ torch.compiler
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- As of ROCm
|
||||
- Since PyTorch
|
||||
- Since ROCm
|
||||
* - ``torch.compiler`` (AOT Autograd)
|
||||
- Autograd captures not only the user-level code, but also backpropagation,
|
||||
which results in capturing the backwards pass “ahead-of-time”. This
|
||||
@@ -765,8 +729,8 @@ The `torchaudio <https://pytorch.org/audio/stable/index.html>`_ library provides
|
||||
utilities for processing audio data in PyTorch, such as audio loading,
|
||||
transformations, and feature extraction.
|
||||
|
||||
To ensure GPU-acceleration with ``torchaudio.transforms``, you need to
|
||||
explicitly move audio data (waveform tensor) to GPU using ``.to('cuda')``.
|
||||
To ensure GPU-acceleration with ``torchaudio.transforms``, you need to move audio
|
||||
data (waveform tensor) explicitly to GPU using ``.to('cuda')``.
|
||||
|
||||
The following ``torchaudio`` features are GPU-accelerated.
|
||||
|
||||
@@ -775,10 +739,10 @@ The following ``torchaudio`` features are GPU-accelerated.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of torchaudio version
|
||||
- As of ROCm
|
||||
- Since torchaudio version
|
||||
- Since ROCm
|
||||
* - ``torchaudio.transforms.Spectrogram``
|
||||
- Generate a spectrogram of an input waveform using STFT.
|
||||
- Generates spectrogram of an input waveform using STFT.
|
||||
- 0.6.0
|
||||
- 4.5
|
||||
* - ``torchaudio.transforms.MelSpectrogram``
|
||||
@@ -798,7 +762,7 @@ torchvision
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
The `torchvision <https://pytorch.org/vision/stable/index.html>`_ library
|
||||
provides datasets, model architectures, and common image transformations for
|
||||
provide datasets, model architectures, and common image transformations for
|
||||
computer vision.
|
||||
|
||||
The following ``torchvision`` features are GPU-accelerated.
|
||||
@@ -808,8 +772,8 @@ The following ``torchvision`` features are GPU-accelerated.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of torchvision version
|
||||
- As of ROCm
|
||||
- Since torchvision version
|
||||
- Since ROCm
|
||||
* - ``torchvision.transforms.functional``
|
||||
- Provides GPU-compatible transformations for image preprocessing like
|
||||
resize, normalize, rotate and crop.
|
||||
@@ -855,7 +819,7 @@ torchtune
|
||||
The `torchtune <https://pytorch.org/torchtune/stable/index.html>`_ library for
|
||||
authoring, fine-tuning and experimenting with LLMs.
|
||||
|
||||
* Usage: Enabling developers to fine-tune ROCm PyTorch solutions.
|
||||
* Usage: It works out-of-the-box, enabling developers to fine-tune ROCm PyTorch solutions.
|
||||
|
||||
* Only official release exists.
|
||||
|
||||
@@ -866,8 +830,7 @@ The `torchserve <https://pytorch.org/serve/>`_ is a PyTorch domain library
|
||||
for common sparsity and parallelism primitives needed for large-scale recommender
|
||||
systems.
|
||||
|
||||
* torchtext does not implement its own kernels. ROCm support is enabled by
|
||||
linking against ROCm libraries.
|
||||
* torchtext does not implement its own kernels. ROCm support is enabled by linking against ROCm libraries.
|
||||
|
||||
* Only official release exists.
|
||||
|
||||
@@ -878,16 +841,14 @@ The `torchrec <https://pytorch.org/torchrec/>`_ is a PyTorch domain library for
|
||||
common sparsity and parallelism primitives needed for large-scale recommender
|
||||
systems.
|
||||
|
||||
* torchrec does not implement its own kernels. ROCm support is enabled by
|
||||
linking against ROCm libraries.
|
||||
* torchrec does not implement its own kernels. ROCm support is enabled by linking against ROCm libraries.
|
||||
|
||||
* Only official release exists.
|
||||
|
||||
Unsupported PyTorch features
|
||||
================================================================================
|
||||
----------------------------
|
||||
|
||||
The following GPU-accelerated PyTorch features are not supported by ROCm for
|
||||
the listed supported PyTorch versions.
|
||||
The following are GPU-accelerated PyTorch features not currently supported by ROCm.
|
||||
|
||||
.. list-table::
|
||||
:widths: 30, 60, 10
|
||||
@@ -895,7 +856,7 @@ the listed supported PyTorch versions.
|
||||
|
||||
* - Feature
|
||||
- Description
|
||||
- As of PyTorch
|
||||
- Since PyTorch
|
||||
* - APEX batch norm
|
||||
- Use APEX batch norm instead of PyTorch batch norm.
|
||||
- 1.6.0
|
||||
@@ -951,3 +912,31 @@ the listed supported PyTorch versions.
|
||||
utilized effectively through custom CUDA extensions or advanced
|
||||
workflows.
|
||||
- Not a core feature
|
||||
|
||||
Use cases and recommendations
|
||||
================================================================================
|
||||
|
||||
* :doc:`Using ROCm for AI: training a model </how-to/rocm-for-ai/training/train-a-model>` provides
|
||||
guidance on how to leverage the ROCm platform for training AI models. It covers the steps, tools, and best practices
|
||||
for optimizing training workflows on AMD GPUs using PyTorch features.
|
||||
|
||||
* :doc:`Single-GPU fine-tuning and inference </how-to/rocm-for-ai/fine-tuning/single-gpu-fine-tuning-and-inference>`
|
||||
describes and demonstrates how to use the ROCm platform for the fine-tuning and inference of
|
||||
machine learning models, particularly large language models (LLMs), on systems with a single AMD
|
||||
Instinct MI300X accelerator. This page provides a detailed guide for setting up, optimizing, and
|
||||
executing fine-tuning and inference workflows in such environments.
|
||||
|
||||
* :doc:`Multi-GPU fine-tuning and inference optimization </how-to/rocm-for-ai/fine-tuning/multi-gpu-fine-tuning-and-inference>`
|
||||
describes and demonstrates the fine-tuning and inference of machine learning models on systems
|
||||
with multi MI300X accelerators.
|
||||
|
||||
* The :doc:`Instinct MI300X workload optimization guide </how-to/rocm-for-ai/inference-optimization/workload>` provides detailed
|
||||
guidance on optimizing workloads for the AMD Instinct MI300X accelerator using ROCm. This guide is aimed at helping
|
||||
users achieve optimal performance for deep learning and other high-performance computing tasks on the MI300X
|
||||
accelerator.
|
||||
|
||||
* The :doc:`Inception with PyTorch documentation </conceptual/ai-pytorch-inception>`
|
||||
describes how PyTorch integrates with ROCm for AI workloads It outlines the use of PyTorch on the ROCm platform and
|
||||
focuses on how to efficiently leverage AMD GPU hardware for training and inference tasks in AI applications.
|
||||
|
||||
For more use cases and recommendations, see `ROCm PyTorch blog posts <https://rocm.blogs.amd.com/blog/tag/pytorch.html>`_.
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
vllm_benchmark:
|
||||
unified_docker:
|
||||
latest:
|
||||
pull_tag: rocm/vllm:rocm6.3.1_instinct_vllm0.8.3_20250410
|
||||
docker_hub_url: https://hub.docker.com/layers/rocm/vllm/rocm6.3.1_instinct_vllm0.8.3_20250410/images/sha256-a0b55c6c0f3fa5d437fb54a66e32a108306c36d4776e570dfd0ae902719bd190
|
||||
pull_tag: rocm/vllm:instinct_main
|
||||
docker_hub_url: https://hub.docker.com/layers/rocm/vllm/rocm6.3.1_instinct_vllm0.7.3_20250311/images/sha256-de0a2649b735f45b7ecab8813eb7b19778ae1f40591ca1196b07bc29c42ed4a3
|
||||
rocm_version: 6.3.1
|
||||
vllm_version: 0.8.3
|
||||
vllm_version: 0.7.3
|
||||
pytorch_version: 2.7.0 (dev nightly)
|
||||
hipblaslt_version: 0.13
|
||||
model_groups:
|
||||
@@ -102,12 +102,19 @@ vllm_benchmark:
|
||||
model_repo: Qwen/Qwen2-72B-Instruct
|
||||
url: https://huggingface.co/Qwen/Qwen2-72B-Instruct
|
||||
precision: float16
|
||||
- model: QwQ-32B
|
||||
mad_tag: pyt_vllm_qwq-32b
|
||||
model_repo: Qwen/QwQ-32B
|
||||
url: https://huggingface.co/Qwen/QwQ-32B
|
||||
- group: JAIS
|
||||
tag: jais
|
||||
models:
|
||||
- model: JAIS 13B
|
||||
mad_tag: pyt_vllm_jais-13b
|
||||
model_repo: core42/jais-13b-chat
|
||||
url: https://huggingface.co/core42/jais-13b-chat
|
||||
precision: float16
|
||||
- model: JAIS 30B
|
||||
mad_tag: pyt_vllm_jais-30b
|
||||
model_repo: core42/jais-30b-chat-v3
|
||||
url: https://huggingface.co/core42/jais-30b-chat-v3
|
||||
precision: float16
|
||||
tunableop: true
|
||||
- group: DBRX
|
||||
tag: dbrx
|
||||
models:
|
||||
|
||||
@@ -92,10 +92,6 @@ PyTorch inference performance testing
|
||||
|
||||
docker pull rocm/pytorch:rocm6.2.3_ubuntu22.04_py3.10_pytorch_release_2.3.0_triton_llvm_reg_issue
|
||||
|
||||
.. note::
|
||||
|
||||
The Chai-1 benchmark uses a specifically selected Docker image using ROCm 6.2.3 and PyTorch 2.3.0 to address an accuracy issue.
|
||||
|
||||
.. container:: model-doc pyt_clip_inference
|
||||
|
||||
2. Use the following command to pull the `ROCm PyTorch Docker image <https://hub.docker.com/layers/rocm/pytorch/rocm6.2.3_ubuntu22.04_py3.10_pytorch_release_2.3.0_triton_llvm_reg_issue/images/sha256-b736a4239ab38a9d0e448af6d4adca83b117debed00bfbe33846f99c4540f79b>`_ from Docker Hub.
|
||||
|
||||
@@ -34,7 +34,7 @@ vLLM inference performance testing
|
||||
|
||||
.. _vllm-benchmark-available-models:
|
||||
|
||||
Supported models
|
||||
Available models
|
||||
================
|
||||
|
||||
.. raw:: html
|
||||
@@ -183,25 +183,6 @@ vLLM inference performance testing
|
||||
to collect latency and throughput performance data, you can also change the benchmarking
|
||||
parameters. See the standalone benchmarking tab for more information.
|
||||
|
||||
{% if model.tunableop %}
|
||||
|
||||
.. note::
|
||||
|
||||
For improved performance, consider enabling :ref:`PyTorch TunableOp <mi300x-tunableop>`.
|
||||
TunableOp automatically explores different implementations and configurations of certain PyTorch
|
||||
operators to find the fastest one for your hardware.
|
||||
|
||||
By default, ``{{model.mad_tag}}`` runs with TunableOp disabled
|
||||
(see
|
||||
`<https://github.com/ROCm/MAD/blob/develop/models.json>`__). To
|
||||
enable it, edit the default run behavior in the ``models.json``
|
||||
configuration before running inference -- update the model's run
|
||||
``args`` by changing ``--tunableop off`` to ``--tunableop on``.
|
||||
|
||||
Enabling TunableOp triggers a two-pass run -- a warm-up followed by the performance-collection run.
|
||||
|
||||
{% endif %}
|
||||
|
||||
.. tab-item:: Standalone benchmarking
|
||||
|
||||
Run the vLLM benchmark tool independently by starting the
|
||||
@@ -350,18 +331,11 @@ for benchmarking, see the version-specific documentation.
|
||||
- PyTorch version
|
||||
- Resources
|
||||
|
||||
* - 6.3.1
|
||||
- 0.7.3
|
||||
- 2.7.0
|
||||
-
|
||||
* `Documentation <https://rocm.docs.amd.com/en/docs-6.3.3/how-to/rocm-for-ai/inference/vllm-benchmark.html>`_
|
||||
* `Docker Hub <https://hub.docker.com/layers/rocm/vllm/rocm6.3.1_instinct_vllm0.7.3_20250325/images/sha256-25245924f61750b19be6dcd8e787e46088a496c1fe17ee9b9e397f3d84d35640>`_
|
||||
|
||||
* - 6.3.1
|
||||
- 0.6.6
|
||||
- 2.7.0
|
||||
-
|
||||
* `Documentation <https://rocm.docs.amd.com/en/docs-6.3.2/how-to/rocm-for-ai/inference/vllm-benchmark.html>`_
|
||||
* `Documentation <https://rocm.docs.amd.com/en/docs-6.3.2/how-to/rocm-for-ai/training/benchmark-docker/pytorch-training.html>`_
|
||||
* `Docker Hub <https://hub.docker.com/layers/rocm/vllm/rocm6.3.1_mi300_ubuntu22.04_py3.12_vllm_0.6.6/images/sha256-9a12ef62bbbeb5a4c30a01f702c8e025061f575aa129f291a49fbd02d6b4d6c9>`_
|
||||
|
||||
* - 6.2.1
|
||||
|
||||
1
submodule-srcs/AMDMIGraphX
Submodule
1
submodule-srcs/AMDMIGraphX
Submodule
Submodule submodule-srcs/AMDMIGraphX added at e8b735f65e
1
submodule-srcs/HIP
Submodule
1
submodule-srcs/HIP
Submodule
Submodule submodule-srcs/HIP added at a0a2dd7fc8
1
submodule-srcs/HIPIFY
Submodule
1
submodule-srcs/HIPIFY
Submodule
Submodule submodule-srcs/HIPIFY added at b803a5270b
1
submodule-srcs/MIOpen
Submodule
1
submodule-srcs/MIOpen
Submodule
Submodule submodule-srcs/MIOpen added at a583315f3e
1
submodule-srcs/MIVisionX
Submodule
1
submodule-srcs/MIVisionX
Submodule
Submodule submodule-srcs/MIVisionX added at a2b69e5b30
1
submodule-srcs/ROCK-Kernel-Driver
Submodule
1
submodule-srcs/ROCK-Kernel-Driver
Submodule
Submodule submodule-srcs/ROCK-Kernel-Driver added at e796ccd5f9
1
submodule-srcs/ROCR-Runtime
Submodule
1
submodule-srcs/ROCR-Runtime
Submodule
Submodule submodule-srcs/ROCR-Runtime added at 4264d016ec
1
submodule-srcs/ROCdbgapi
Submodule
1
submodule-srcs/ROCdbgapi
Submodule
Submodule submodule-srcs/ROCdbgapi added at 59be7ff0aa
1
submodule-srcs/ROCgdb
Submodule
1
submodule-srcs/ROCgdb
Submodule
Submodule submodule-srcs/ROCgdb added at 401bb21f2f
1
submodule-srcs/ROCmValidationSuite
Submodule
1
submodule-srcs/ROCmValidationSuite
Submodule
Submodule submodule-srcs/ROCmValidationSuite added at fb251886ed
1
submodule-srcs/Tensile
Submodule
1
submodule-srcs/Tensile
Submodule
Submodule submodule-srcs/Tensile added at be49885fce
1
submodule-srcs/TransferBench
Submodule
1
submodule-srcs/TransferBench
Submodule
Submodule submodule-srcs/TransferBench added at 3ea2f226ec
1
submodule-srcs/amdsmi
Submodule
1
submodule-srcs/amdsmi
Submodule
Submodule submodule-srcs/amdsmi added at ede62f2534
1
submodule-srcs/clr
Submodule
1
submodule-srcs/clr
Submodule
Submodule submodule-srcs/clr added at 0f2d602424
1
submodule-srcs/composable_kernel
Submodule
1
submodule-srcs/composable_kernel
Submodule
Submodule submodule-srcs/composable_kernel added at a8c5bd9b9a
1
submodule-srcs/half
Submodule
1
submodule-srcs/half
Submodule
Submodule submodule-srcs/half added at 1ddada2251
1
submodule-srcs/hip-tests
Submodule
1
submodule-srcs/hip-tests
Submodule
Submodule submodule-srcs/hip-tests added at 3573bde0c2
1
submodule-srcs/hipBLAS
Submodule
1
submodule-srcs/hipBLAS
Submodule
Submodule submodule-srcs/hipBLAS added at 0a335435e9
1
submodule-srcs/hipBLAS-common
Submodule
1
submodule-srcs/hipBLAS-common
Submodule
Submodule submodule-srcs/hipBLAS-common added at 7c1566ba46
1
submodule-srcs/hipBLASLt
Submodule
1
submodule-srcs/hipBLASLt
Submodule
Submodule submodule-srcs/hipBLASLt added at a999b0721d
1
submodule-srcs/hipCUB
Submodule
1
submodule-srcs/hipCUB
Submodule
Submodule submodule-srcs/hipCUB added at a6005943c5
1
submodule-srcs/hipFFT
Submodule
1
submodule-srcs/hipFFT
Submodule
Submodule submodule-srcs/hipFFT added at 396169c84a
1
submodule-srcs/hipRAND
Submodule
1
submodule-srcs/hipRAND
Submodule
Submodule submodule-srcs/hipRAND added at d2516cc199
1
submodule-srcs/hipSOLVER
Submodule
1
submodule-srcs/hipSOLVER
Submodule
Submodule submodule-srcs/hipSOLVER added at ca0de3c9c9
1
submodule-srcs/hipSPARSE
Submodule
1
submodule-srcs/hipSPARSE
Submodule
Submodule submodule-srcs/hipSPARSE added at a6c62e48eb
1
submodule-srcs/hipSPARSELt
Submodule
1
submodule-srcs/hipSPARSELt
Submodule
Submodule submodule-srcs/hipSPARSELt added at f3f4f590a4
1
submodule-srcs/hipTensor
Submodule
1
submodule-srcs/hipTensor
Submodule
Submodule submodule-srcs/hipTensor added at e5529b9291
1
submodule-srcs/hipfort
Submodule
1
submodule-srcs/hipfort
Submodule
Submodule submodule-srcs/hipfort added at f3d6aa3e86
1
submodule-srcs/hipother
Submodule
1
submodule-srcs/hipother
Submodule
Submodule submodule-srcs/hipother added at 49b1588f83
1
submodule-srcs/llvm-project
Submodule
1
submodule-srcs/llvm-project
Submodule
Submodule submodule-srcs/llvm-project added at c7fe45cf4b
1
submodule-srcs/openmp-extras/aomp
Submodule
1
submodule-srcs/openmp-extras/aomp
Submodule
Submodule submodule-srcs/openmp-extras/aomp added at 1cd9ec1017
1
submodule-srcs/openmp-extras/aomp-extras
Submodule
1
submodule-srcs/openmp-extras/aomp-extras
Submodule
Submodule submodule-srcs/openmp-extras/aomp-extras added at 97567952ae
1
submodule-srcs/rccl
Submodule
1
submodule-srcs/rccl
Submodule
Submodule submodule-srcs/rccl added at 7b86f83d84
1
submodule-srcs/rdc
Submodule
1
submodule-srcs/rdc
Submodule
Submodule submodule-srcs/rdc added at be34d624f6
1
submodule-srcs/rocAL
Submodule
1
submodule-srcs/rocAL
Submodule
Submodule submodule-srcs/rocAL added at 373ef865ac
1
submodule-srcs/rocALUTION
Submodule
1
submodule-srcs/rocALUTION
Submodule
Submodule submodule-srcs/rocALUTION added at 9713084af8
1
submodule-srcs/rocBLAS
Submodule
1
submodule-srcs/rocBLAS
Submodule
Submodule submodule-srcs/rocBLAS added at 80e5394d6a
1
submodule-srcs/rocDecode
Submodule
1
submodule-srcs/rocDecode
Submodule
Submodule submodule-srcs/rocDecode added at a2a7b63cad
1
submodule-srcs/rocFFT
Submodule
1
submodule-srcs/rocFFT
Submodule
Submodule submodule-srcs/rocFFT added at 058ba87fdc
1
submodule-srcs/rocJPEG
Submodule
1
submodule-srcs/rocJPEG
Submodule
Submodule submodule-srcs/rocJPEG added at 73d36d35d9
1
submodule-srcs/rocPRIM
Submodule
1
submodule-srcs/rocPRIM
Submodule
Submodule submodule-srcs/rocPRIM added at d8771ec18a
1
submodule-srcs/rocPyDecode
Submodule
1
submodule-srcs/rocPyDecode
Submodule
Submodule submodule-srcs/rocPyDecode added at 848e49d29d
1
submodule-srcs/rocRAND
Submodule
1
submodule-srcs/rocRAND
Submodule
Submodule submodule-srcs/rocRAND added at 4d5d3a88d1
1
submodule-srcs/rocSHMEM
Submodule
1
submodule-srcs/rocSHMEM
Submodule
Submodule submodule-srcs/rocSHMEM added at 7702b3c0f3
1
submodule-srcs/rocSOLVER
Submodule
1
submodule-srcs/rocSOLVER
Submodule
Submodule submodule-srcs/rocSOLVER added at db754e3f55
1
submodule-srcs/rocSPARSE
Submodule
1
submodule-srcs/rocSPARSE
Submodule
Submodule submodule-srcs/rocSPARSE added at 4953add0ae
1
submodule-srcs/rocThrust
Submodule
1
submodule-srcs/rocThrust
Submodule
Submodule submodule-srcs/rocThrust added at 6bf2777019
1
submodule-srcs/rocWMMA
Submodule
1
submodule-srcs/rocWMMA
Submodule
Submodule submodule-srcs/rocWMMA added at 1a5b623166
1
submodule-srcs/rocm-cmake
Submodule
1
submodule-srcs/rocm-cmake
Submodule
Submodule submodule-srcs/rocm-cmake added at ecc716b97c
1
submodule-srcs/rocm-core
Submodule
1
submodule-srcs/rocm-core
Submodule
Submodule submodule-srcs/rocm-core added at 73dae9c82a
1
submodule-srcs/rocm-examples
Submodule
1
submodule-srcs/rocm-examples
Submodule
Submodule submodule-srcs/rocm-examples added at 3bbd2987a3
1
submodule-srcs/rocm_bandwidth_test
Submodule
1
submodule-srcs/rocm_bandwidth_test
Submodule
Submodule submodule-srcs/rocm_bandwidth_test added at 84b8ddd268
1
submodule-srcs/rocm_smi_lib
Submodule
1
submodule-srcs/rocm_smi_lib
Submodule
Submodule submodule-srcs/rocm_smi_lib added at 03a4530b68
1
submodule-srcs/rocminfo
Submodule
1
submodule-srcs/rocminfo
Submodule
Submodule submodule-srcs/rocminfo added at 6ea2ba38c8
1
submodule-srcs/rocprofiler
Submodule
1
submodule-srcs/rocprofiler
Submodule
Submodule submodule-srcs/rocprofiler added at 40da7312a0
1
submodule-srcs/rocprofiler-compute
Submodule
1
submodule-srcs/rocprofiler-compute
Submodule
Submodule submodule-srcs/rocprofiler-compute added at a11d700e10
1
submodule-srcs/rocprofiler-register
Submodule
1
submodule-srcs/rocprofiler-register
Submodule
Submodule submodule-srcs/rocprofiler-register added at 7c6cd44f63
1
submodule-srcs/rocprofiler-sdk
Submodule
1
submodule-srcs/rocprofiler-sdk
Submodule
Submodule submodule-srcs/rocprofiler-sdk added at e8e49fe769
1
submodule-srcs/rocprofiler-systems
Submodule
1
submodule-srcs/rocprofiler-systems
Submodule
Submodule submodule-srcs/rocprofiler-systems added at 9c07bf3ab0
1
submodule-srcs/rocr_debug_agent
Submodule
1
submodule-srcs/rocr_debug_agent
Submodule
Submodule submodule-srcs/rocr_debug_agent added at 5c49ec91fd
1
submodule-srcs/roctracer
Submodule
1
submodule-srcs/roctracer
Submodule
Submodule submodule-srcs/roctracer added at f55a694381
1
submodule-srcs/rpp
Submodule
1
submodule-srcs/rpp
Submodule
Submodule submodule-srcs/rpp added at 5fb204ca70
1
submodule-srcs/spirv-llvm-translator
Submodule
1
submodule-srcs/spirv-llvm-translator
Submodule
Submodule submodule-srcs/spirv-llvm-translator added at 8ed662a93b
Reference in New Issue
Block a user