Skip to content
Merged
Show file tree
Hide file tree
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
7 changes: 6 additions & 1 deletion .github/scripts/build-rocm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,16 @@ if [ "${RUNNER_OS}" == "Linux" ]; then
else
bnb_rocm_arch="gfx1100;gfx1101;gfx1102;gfx1150;gfx1151;gfx1200;gfx1201"

rocm_index_url="https://repo.amd.com/rocm/whl-multi-arch/"
if rocm_version_at_least "10.0"; then
rocm_index_url="https://stable.repo.amd.com/rocm/whl-next/"
fi

if rocm_version_at_least "7.14"; then
# Add the remaining targets available from the Windows multi-architecture index.
bnb_rocm_arch="${bnb_rocm_arch};gfx908;gfx90a;gfx1010;gfx1011;gfx1012;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036;gfx1103;gfx1152;gfx1153"

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "rocm[libraries,devel]==${ROCM_VERSION}"
pip install --index-url "${rocm_index_url}" "rocm[libraries,devel]==${ROCM_VERSION}"
else
# Install ROCm SDK wheels from repo.radeon.com.
rocm_base_url="https://repo.radeon.com/rocm/windows/rocm-rel-${ROCM_VERSION}"
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -133,12 +133,14 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-22.04]
rocm_version: ["6.4.4", "7.0.2", "7.1.1", "7.2.4", "7.14.0"]
rocm_version: ["6.4.4", "7.0.2", "7.1.1", "7.2.4", "7.14.0", "10.0.0"]
include:
- os: windows-2025
rocm_version: "7.2.1"
- os: windows-2025
rocm_version: "7.14.0"
- os: windows-2025
rocm_version: "10.0.0"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
18 changes: 12 additions & 6 deletions docs/source/installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,8 @@ Big thanks to [wkpark](https://github.com/wkpark), [Jamezo97](https://github.com
* All features are supported for both consumer RDNA devices and Data Center CDNA products.
* A compatible PyTorch version with AMD ROCm support is required. It is recommended to use the latest stable release. On Linux, see [PyTorch on ROCm](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/3rd-party/pytorch-install.html) for guidance. On Windows, ROCm-enabled PyTorch wheels are available from:
- [repo.radeon.com/rocm/windows/](https://repo.radeon.com/rocm/windows/) — official AMD releases
- [repo.amd.com/rocm/whl/](https://repo.amd.com/rocm/whl/) — [TheRock](https://github.com/ROCm/TheRock) release builds
- [rocm.nightlies.amd.com/v2](https://rocm.nightlies.amd.com/v2) — TheRock nightly builds
- [stable.repo.amd.com/rocm/whl-next/](https://stable.repo.amd.com/rocm/whl-next/) — current stable [TheRock](https://github.com/ROCm/TheRock) release builds
- [nightly.repo.amd.com/rocm/whl-next/](https://nightly.repo.amd.com/rocm/whl-next/) — current nightly TheRock builds

### Installation from PyPI[[rocm-pip]]

Expand All @@ -167,8 +167,10 @@ The currently distributed `bitsandbytes` are built with the following configurat
| **Linux x86-64** | 7.1.1 | CDNA: gfx908, gfx90a, gfx942, gfx950 / RDNA: gfx1030, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201
| **Linux x86-64** | 7.2.4 | CDNA: gfx908, gfx90a, gfx942, gfx950 / RDNA: gfx1030, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201
| **Linux x86-64** | 7.14.0 | CDNA: gfx908, gfx90a, gfx942, gfx950, gfx1250 / RDNA: gfx1010, gfx1011, gfx1012, gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201
| **Linux x86-64** | 10.0.0 | CDNA: gfx908, gfx90a, gfx942, gfx950, gfx1250 / RDNA: gfx1010, gfx1011, gfx1012, gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201
| **Windows x86-64** | 7.2.1 | RDNA: gfx1100, gfx1101, gfx1102, gfx1150, gfx1151, gfx1200, gfx1201
| **Windows x86-64** | 7.14.0 | CDNA: gfx908, gfx90a / RDNA: gfx1010, gfx1011, gfx1012, gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201
| **Windows x86-64** | 10.0.0 | CDNA: gfx908, gfx90a / RDNA: gfx1010, gfx1011, gfx1012, gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201

Use `pip` or `uv` to install the latest release:

Expand All @@ -178,7 +180,7 @@ pip install bitsandbytes

### Compile from Source[[rocm-compile]]

bitsandbytes can be compiled from ROCm 6.3 - ROCm 7.14.0. See the `CMakeLists.txt` for additional options.
bitsandbytes can be compiled from ROCm 6.3 - ROCm 10.0.0. See the `CMakeLists.txt` for additional options.

<hfoptions id="rocm-source">
<hfoption id="Linux">
Expand Down Expand Up @@ -207,15 +209,19 @@ Compilation on Windows requires Visual Studio 2022 with C++ support, CMake, Ninj

Instead of a system-wide ROCm installation, use the pip-installable ROCm SDK.

For ROCm 7.14.0, install the current multi-architecture SDK from [repo.amd.com](https://repo.amd.com/rocm/whl-multi-arch/):
For ROCm 10.0.0, install the current stable multi-architecture SDK from [stable.repo.amd.com](https://stable.repo.amd.com/rocm/whl-next/):

```bash
pip install ninja cmake
# Replace gfx1100 with your GPU architecture. To support multiple GPU
# architectures, add multiple device extras (for example, device-gfx1100,device-gfx1151).
pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ \
"rocm[libraries,devel,device-gfx1100]==7.14.0"
pip install --index-url https://stable.repo.amd.com/rocm/whl-next/ \
"rocm[libraries,devel,device-gfx1100]==10.0.0"
```

After installing the SDK, initialize it and build bitsandbytes:

```bash
# Expand the devel tarball and link the installed device files.
rocm-sdk init

Expand Down
Loading