Skip to content

Commit 404589e

Browse files
authored
fix(supraseal): add Turing (sm_75) back to CUDA architectures (#1038)
When CUDA 13 support was added, Volta (sm_70) was correctly removed as CUDA 13 dropped it. However, Turing (sm_75) was also removed even though CUDA 13 still supports it. This causes a segfault on `./curio --version` when built on machines with Turing GPUs (GTX 1650/1660, RTX 2060-2080, Tesla T4). The CUDA kernels in pc2.cu are compiled only for sm_80+, and the CUDA runtime crashes during binary initialization when no compatible kernel is found for sm_75. Binaries built on Ampere+ machines work fine because the embedded kernels match. But building locally on a Turing machine produces a broken binary. Adds -gencode arch=compute_75,code=sm_75 back to CUDA_ARCH.
1 parent 5171e6d commit 404589e

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

extern/supraseal/build.sh

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,9 +179,11 @@ export PATH=$CUDA/bin:$PATH
179179

180180
echo "Found CUDA $CUDA_VERSION at: $CUDA"
181181
SPDK="deps/spdk-v24.05"
182-
# CUDA 13 architectures - removed compute_70 (Volta) as it's no longer supported in CUDA 13+
182+
# CUDA architectures — include all supported generations.
183+
# CUDA 13 dropped Volta (sm_70) but still supports Turing (sm_75).
184+
# sm_75: Turing (GTX 1650/1660, RTX 2060-2080, T4)
183185
# sm_80: Ampere (A100), sm_86: Ampere (RTX 30xx), sm_89: Ada Lovelace (RTX 40xx, L40), sm_90: Hopper (H100)
184-
CUDA_ARCH="-arch=sm_80 -gencode arch=compute_80,code=sm_80 -gencode arch=compute_86,code=sm_86 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_90,code=sm_90 -t0"
186+
CUDA_ARCH="-arch=sm_75 -gencode arch=compute_75,code=sm_75 -gencode arch=compute_80,code=sm_80 -gencode arch=compute_86,code=sm_86 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_90,code=sm_90 -t0"
185187
CXXSTD=`$CXX -dM -E -x c++ /dev/null | \
186188
awk '{ if($2=="__cplusplus" && $3<"2017") print "-std=c++17"; }'`
187189

0 commit comments

Comments
 (0)