diff --git a/.github/scripts/build-rocm.sh b/.github/scripts/build-rocm.sh index 7f971824a..f51d7d1f5 100644 --- a/.github/scripts/build-rocm.sh +++ b/.github/scripts/build-rocm.sh @@ -23,7 +23,7 @@ rocm_version_at_least() { return 1 } -bnb_rocm_arch="gfx90a;gfx942;gfx1100;gfx1101;gfx1102;gfx1103" +bnb_rocm_arch="gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1102;gfx1103" # ROCm 6.4+ - Add RDNA4 and RDNA3.5 targets. Note we assume >=6.4.4. if rocm_version_at_least "6.4"; then @@ -35,9 +35,9 @@ if rocm_version_at_least "7.0"; then bnb_rocm_arch="${bnb_rocm_arch};gfx950" fi -# ROCm 7.14+ - Add CDNA1 and RDNA2 targets. +# ROCm 7.14+ - Add RDNA1 and additional RDNA2 targets. if rocm_version_at_least "7.14"; then - bnb_rocm_arch="${bnb_rocm_arch};gfx908;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036" + bnb_rocm_arch="${bnb_rocm_arch};gfx1010;gfx1011;gfx1012;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036" fi # ROCm 7.14+ - Add CDNA5 (gfx1250). @@ -61,8 +61,8 @@ else bnb_rocm_arch="gfx1100;gfx1101;gfx1102;gfx1150;gfx1151;gfx1200;gfx1201" if rocm_version_at_least "7.14"; then - # Add RDNA2 and additional RDNA3.5 targets. - bnb_rocm_arch="${bnb_rocm_arch};gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036;gfx1152;gfx1153" + # 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}" else diff --git a/CMakeLists.txt b/CMakeLists.txt index 950f8d213..0066d086f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -267,7 +267,7 @@ elseif(BUILD_HIP) elseif(AMDGPU_TARGETS AND NOT CMAKE_HIP_ARCHITECTURES) set(CMAKE_HIP_ARCHITECTURES ${AMDGPU_TARGETS}) elseif(NOT CMAKE_HIP_ARCHITECTURES) - set(CMAKE_HIP_ARCHITECTURES "gfx90a;gfx942;gfx1100;gfx1101;gfx1102;gfx1103;gfx1150;gfx1151;gfx1152;gfx1153;gfx1200;gfx1201") + set(CMAKE_HIP_ARCHITECTURES "gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1102;gfx1103;gfx1150;gfx1151;gfx1152;gfx1153;gfx1200;gfx1201") endif() enable_language(HIP) diff --git a/README.md b/README.md index 585574a39..e2501a99a 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ bitsandbytes has the following minimum requirements for all platforms: 🟥 AMD GPU
cuda CDNA: gfx908, gfx90a, gfx942, gfx950, gfx1250
- RDNA: gfx103X, gfx110X, gfx115X, gfx120X + RDNA: gfx101X, gfx103X, gfx110X, gfx115X, gfx120X ✅ ✅ @@ -136,7 +136,8 @@ bitsandbytes has the following minimum requirements for all platforms: 🟥 AMD GPU
cuda - RDNA: gfx103X, gfx110X, gfx115X, gfx120X + CDNA: gfx908, gfx90a
+ RDNA: gfx101X, gfx103X, gfx110X, gfx115X, gfx120X ✅ ✅ diff --git a/docs/source/installation.mdx b/docs/source/installation.mdx index eb9156a65..b2cc146c3 100644 --- a/docs/source/installation.mdx +++ b/docs/source/installation.mdx @@ -162,13 +162,13 @@ The currently distributed `bitsandbytes` are built with the following configurat | **OS** | **ROCm** | **Targets** |--------------------|----------|---------------------------------------------------------------------| -| **Linux x86-64** | 6.4.4 | CDNA: gfx90a, gfx942 / RDNA: gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 -| **Linux x86-64** | 7.0.2 | CDNA: gfx90a, gfx942, gfx950 / RDNA: gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 -| **Linux x86-64** | 7.1.1 | CDNA: gfx90a, gfx942, gfx950 / RDNA: gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 -| **Linux x86-64** | 7.2.4 | CDNA: gfx90a, gfx942, gfx950 / RDNA: gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 -| **Linux x86-64** | 7.14.0 | CDNA: gfx908, gfx90a, gfx942, gfx950, gfx1250 / RDNA: gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 +| **Linux x86-64** | 6.4.4 | CDNA: gfx908, gfx90a, gfx942 / RDNA: gfx1030, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 +| **Linux x86-64** | 7.0.2 | CDNA: gfx908, gfx90a, gfx942, gfx950 / RDNA: gfx1030, gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153, gfx1200, gfx1201 +| **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 | **Windows x86-64** | 7.2.1 | RDNA: gfx1100, gfx1101, gfx1102, gfx1150, gfx1151, gfx1200, gfx1201 -| **Windows x86-64** | 7.14.0 | RDNA: gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036, gfx1100, gfx1101, gfx1102, gfx1150, gfx1151, gfx1152, gfx1153, 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 Use `pip` or `uv` to install the latest release: