File tree Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Original file line number Diff line number Diff line change @@ -46,7 +46,20 @@ if [ ! -z ${GG_BUILD_METAL} ]; then
46
46
fi
47
47
48
48
if [ ! -z ${GG_BUILD_CUDA} ]; then
49
- CMAKE_EXTRA=" ${CMAKE_EXTRA} -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=native"
49
+ CMAKE_EXTRA=" ${CMAKE_EXTRA} -DGGML_CUDA=ON"
50
+
51
+ if command -v nvidia-smi > /dev/null 2>&1 ; then
52
+ CUDA_ARCH=$( nvidia-smi --query-gpu=compute_cap --format=csv,noheader,nounits 2> /dev/null | head -1 | tr -d ' .' )
53
+ if [[ -n " $CUDA_ARCH " && " $CUDA_ARCH " =~ ^[0-9]+$ ]]; then
54
+ CMAKE_EXTRA=" ${CMAKE_EXTRA} -DCMAKE_CUDA_ARCHITECTURES=${CUDA_ARCH} "
55
+ else
56
+ echo " Warning: Using fallback CUDA architectures"
57
+ CMAKE_EXTRA=" ${CMAKE_EXTRA} -DCMAKE_CUDA_ARCHITECTURES=61;70;75;80;86;89"
58
+ fi
59
+ else
60
+ echo " Error: nvidia-smi not found, cannot build with CUDA"
61
+ exit 1
62
+ fi
50
63
fi
51
64
52
65
if [ ! -z ${GG_BUILD_SYCL} ]; then
You can’t perform that action at this time.
0 commit comments