From 233189fee881b3f22ca6a59f81bfbc7d64693ca2 Mon Sep 17 00:00:00 2001 From: Aman Gupta Date: Thu, 25 Dec 2025 18:05:37 +0100 Subject: [PATCH 1/2] ggml-cuda: fix regex for arch list --- ggml/src/ggml-cuda/CMakeLists.txt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ggml/src/ggml-cuda/CMakeLists.txt b/ggml/src/ggml-cuda/CMakeLists.txt index f3c3ebff7ea..2cc4b200ea1 100644 --- a/ggml/src/ggml-cuda/CMakeLists.txt +++ b/ggml/src/ggml-cuda/CMakeLists.txt @@ -44,8 +44,13 @@ if (CUDAToolkit_FOUND) # Replace any 12x-real architectures with 12x{a}-real. FP4 ptx instructions are not available in just 12x if (GGML_NATIVE) set(PROCESSED_ARCHITECTURES "") - foreach(ARCH ${CMAKE_CUDA_ARCHITECTURES_NATIVE}) - if(ARCH MATCHES "^12[0-9]$") + if (CMAKE_CUDA_ARCHITECTURES_NATIVE) + set(ARCH_LIST ${CMAKE_CUDA_ARCHITECTURES_NATIVE}) + else() + set(ARCH_LIST ${CMAKE_CUDA_ARCHITECTURES}) + endif() + foreach(ARCH ${ARCH_LIST}) + if(ARCH MATCHES "^12[0-9]*-?.*$") string(REGEX REPLACE "^(12[0-9]).*$" "\\1" BASE_ARCH ${ARCH}) message(STATUS "Replacing ${ARCH} with ${BASE_ARCH}a-real") list(APPEND PROCESSED_ARCHITECTURES "${BASE_ARCH}a-real") From b039ec9ed02c14c2702856420310759b2537c2b1 Mon Sep 17 00:00:00 2001 From: Aman Gupta Date: Thu, 25 Dec 2025 18:23:29 +0100 Subject: [PATCH 2/2] make regex exact --- ggml/src/ggml-cuda/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ggml/src/ggml-cuda/CMakeLists.txt b/ggml/src/ggml-cuda/CMakeLists.txt index 2cc4b200ea1..c0f8bcaa378 100644 --- a/ggml/src/ggml-cuda/CMakeLists.txt +++ b/ggml/src/ggml-cuda/CMakeLists.txt @@ -50,7 +50,7 @@ if (CUDAToolkit_FOUND) set(ARCH_LIST ${CMAKE_CUDA_ARCHITECTURES}) endif() foreach(ARCH ${ARCH_LIST}) - if(ARCH MATCHES "^12[0-9]*-?.*$") + if (ARCH MATCHES "^12[0-9](-real|-virtual)?$") string(REGEX REPLACE "^(12[0-9]).*$" "\\1" BASE_ARCH ${ARCH}) message(STATUS "Replacing ${ARCH} with ${BASE_ARCH}a-real") list(APPEND PROCESSED_ARCHITECTURES "${BASE_ARCH}a-real")