diff options
author | Kawrakow <iwankawrakow@gmail.com> | 2025-03-22 18:17:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-22 18:17:51 +0100 |
commit | 6028362ef6112c035001fef4313ab3697ef79a30 (patch) | |
tree | 4c206a267813490cb9bf7bf4ba96e591b111b23f | |
parent | 13ecc5332ec4c5ad38d930019a1b6a7211c88e50 (diff) |
Native build ooption for CUDA when GGML_NATIVE is set (#280)
Co-authored-by: Iwan Kawrakow <iwan.kawrakow@gmail.com>
-rw-r--r-- | ggml/src/CMakeLists.txt | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ggml/src/CMakeLists.txt b/ggml/src/CMakeLists.txt index 67b8f36d..f7f15fbd 100644 --- a/ggml/src/CMakeLists.txt +++ b/ggml/src/CMakeLists.txt @@ -297,10 +297,12 @@ if (GGML_CUDA) # 60 == FP16 CUDA intrinsics # 61 == integer CUDA intrinsics # 70 == compute capability at which unrolling a loop in mul_mat_q kernels is faster - if (GGML_CUDA_F16 OR GGML_CUDA_DMMV_F16) - set(CMAKE_CUDA_ARCHITECTURES "60;61;70;75") + if (GGML_NATIVE AND CUDAToolkit_VERSION VERSION_GREATER_EQUAL "11.6" AND CMAKE_VERSION VERSION_GREATER_EQUAL "3.24") + set(CMAKE_CUDA_ARCHITECTURES "native") + elseif (GGML_CUDA_F16 OR GGML_CUDA_DMMV_F16) + set(CMAKE_CUDA_ARCHITECTURES "60;61;70;75;80") else() - set(CMAKE_CUDA_ARCHITECTURES "52;61;70;75") + set(CMAKE_CUDA_ARCHITECTURES "50;61;70;75;80") #set(CMAKE_CUDA_ARCHITECTURES "OFF") # use this to compile much faster, but only F16 models work endif() endif() |