[BUG] MatX 0.4.0 fails to build with -DCMAKE_CUDA_ARCHITECTURES="60"
dagardner-nv opened this issue · comments
Describe the bug
MatX 0.4.0 is failing to build if CMAKE_CUDA_ARCHITECTURES="60", works for others.
To Reproduce
git clone git@github.com:NVIDIA/MatX.git
cd MatX/
mamba create -n matx_arch60 Python=3.10 numpy
conda activate matx_arch60
mkdir build && cd build
cmake -DMATX_BUILD_BENCHMARKS=OFF -DMATX_BUILD_DOCS=OFF -DMATX_BUILD_EXAMPLES=ON -DMATX_BUILD_TESTS=ON -DCMAKE_CUDA_ARCHITECTURES="60" ..
make -j
fails with:
2 errors detected in the compilation of "/home/dagardner/work/tmp/MatX/test/00_operators/ReductionTests.cu".
make[2]: *** [test/CMakeFiles/matx_test.dir/build.make:212: test/CMakeFiles/matx_test.dir/00_operators/ReductionTests.cu.o] Error 255
/home/dagardner/work/tmp/MatX/include/matx/transforms/reduce.h(172): error: no instance of overloaded function "atomicCAS" matches the argument list
argument types are: (unsigned short *, unsigned short, short)
/home/dagardner/work/tmp/MatX/include/matx/transforms/reduce.h(201): error: no instance of overloaded function "atomicCAS" matches the argument list
argument types are: (unsigned short *, unsigned short, short)
Expected behavior
Build
System details (please complete the following information):
- OS: Debian 11.7
- CUDA version: 11.8
- g++ version: 10.2.1-6
Someone on my team noticed this:
https://stackoverflow.com/questions/74201452/cuda-11-8-fails-to-compile-atomiccas-for-16-bit-unsigned-integers-is-cudas-doc
If arch60 is no longer supported, then the README.md should be updated as it currently lists:
cmake .. -DCMAKE_CUDA_ARCHITECTURES="60;70"
Fixed in e974c12