System Environment:
Ubuntu 18.04.5 LTS Server
CUDA v11.1
GPU: RTX-3080 (driver 455.32.00)
AP: GPU_Burn v1.1
Symptom:
met error in make gpu_burn
fae@intel:~/gpu_burn$ sudo make
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:.:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin /usr/local/cuda/bin/nvcc -I/usr/local/cuda/include -arch=compute_30 -ptx compare.cu -o compare.ptx
nvcc fatal : Value 'compute_30' is not defined for option 'gpu-architecture'
Makefile:10: recipe for target 'drv' failed
make: *** [drv] Error 1
This symptom cause by nvcc --gpu-architecture (-arch) in CUDA v11.1 not support compute_30. So we should edit Makefile as below.
CUDAPATH=/usr/local/cuda
# Have this point to an old enough gcc (for nvcc)
GCCPATH=/usr
NVCC=${CUDAPATH}/bin/nvcc
CCPATH=${GCCPATH}/bin
drv:
PATH=${PATH}:.:${CCPATH}:${PATH} ${NVCC} -I${CUDAPATH}/include -arch=compute_30 -ptx compare.cu -o compare.ptx
g++ -O3 -Wno-unused-result -I${CUDAPATH}/include -c gpu_burn-drv.cpp
g++ -o gpu_burn gpu_burn-drv.o -O3 -lcuda -L${CUDAPATH}/lib64 -L${CUDAPATH}/lib -Wl,-rpath=${CUDAPATH}/lib64 -Wl,-rpath=${CUDAPATH}/lib -lcublas -lcudart -o gpu_burn
Change -arch=compute_30 to compute_80, or refer the Virtual Architecture Feature List change value.
compute_35, and compute_37 | Kepler support | Geforce 600 |
Unified memory programming | Geforce 700 | |
Dynamic parallelism support | Geforce 800 | |
compute_50, compute_52, and compute_53 | + Maxwell support | Geforce GTX 900 series |
compute_60, compute_61, and compute_62 | + Pascal support | Geforce GTX 10 series |
compute_70 and compute_72 | + Volta support | V100 series |
compute_75 | + Turing support | Geforce RTX 2000 series |
compute_80 | + Ampere support | Geforce RTX 3000 series |