Cub module fails to build on v8.0.0b4 with Cuda 11.0
See original GitHub issueWhen attempting to build Cupy from source at work on the latest Cuda 11.0 (with the 450.51.05 driver), the build fails when trying to build the cub module. I use Cupy for scientific computing (numerical optics) so I do not use cuTensor of cuDNN. I followed the exact same installation procedure that worked on my personnal PC (installing the latest Cuda 11.0 with the new driver in headless mode), then try to install Cupy by first compiling using “python setup.py build” in the source directory. This fails outputing the following error :
/usr/local/cuda-11.0/bin/nvcc -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100909 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -I/home/tangui/anaconda3/include/python3.7m -c cupy/cuda/cupy_cub.cu -o build/temp.linux-x86_64-3.7/cupy/cuda/cupy_cub.o --generate-code=arch=compute_30,code=compute_30 --generate-code=arch=compute_50,code=compute_50 --generate-code=arch=compute_60,code=sm_60 --generate-code=arch=compute_61,code=sm_61 --generate-code=arch=compute_70,code=sm_70 --generate-code=arch=compute_75,code=sm_75 --generate-code=arch=compute_80,code=sm_80 --generate-code=arch=compute_80,code=compute_80 -O2 --compiler-options="-fPIC" --std=c++11
nvcc fatal : Unsupported gpu architecture 'compute_30'
It seems that nvcc tries to compile with all possible architectures, and that the option -generate-code=arch=compute_30,code=compute_30
is not compatible with the latest version of nvcc that I have with the Cuda toolkit.
I looked for ways to change the nvcc compiler options to try and avoid this, but I could not find how. It seems like nvcc tries by default to compile for all architecture, but I only need sm_75 !
Thank you in advance.
-OS : Ubuntu 20.04 LTS -CUDA version : 11.0 -Cupy version : v8.0.0b4 -GPU : Nvidia Quadro RTX3000 (Turing)
This is the full trace :
python setup.py build -vvvv
Options: {'package_name': 'cupy', 'long_description': None, 'wheel_libs': [], 'wheel_includes': [], 'no_rpath': False, 'profile': False, 'linetrace': False, 'annotate': False, 'no_cuda': False, 'use_hip': False}
-------- Configuring Module: cuda --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
-------- Configuring Module: cusolver --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
-------- Configuring Module: cudnn --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmpxy09btyx/a.cpp:1:10: fatal error: cudnn.h: No such file or directory
1 | #include <cudnn.h>
| ^~~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: nccl --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmpvbhrydfm/a.cpp:1:10: fatal error: nccl.h: No such file or directory
1 | #include <nccl.h>
| ^~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: nvtx --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
-------- Configuring Module: cutensor --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmp_fucbjhm/a.cpp:1:10: fatal error: cutensor.h: No such file or directory
1 | #include <cutensor.h>
| ^~~~~~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: cub --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
-------- Configuring Module: thrust --------
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
************************************************************
* CuPy Configuration Summary *
************************************************************
Build Environment:
Include directories: ['/usr/local/cuda-11.0/include/cub', '/home/tangui/Downloads/cupy/install/../cupy/core/include', '/usr/local/cuda-11.0/include']
Library directories: ['/usr/local/cuda-11.0/lib64']
nvcc command : ['/usr/local/cuda-11.0/bin/nvcc']
Environment Variables:
CFLAGS : (none)
LDFLAGS : (none)
LIBRARY_PATH : (none)
CUDA_PATH : (none)
NVTOOLSEXT_PATH : (none)
NVCC : /usr/local/cuda-11.0/bin/nvcc
ROCM_HOME : (none)
CUPY_CUB_PATH : (none)
Modules:
cuda : Yes (version 11000)
cusolver : Yes
cudnn : No
-> Include files not found: ['cudnn.h']
-> Check your CFLAGS environment variable.
nccl : No
-> Include files not found: ['nccl.h']
-> Check your CFLAGS environment variable.
nvtx : Yes
cutensor : No
-> Include files not found: ['cutensor.h']
-> Check your CFLAGS environment variable.
cub : Yes (version 100909)
thrust : Yes (version 100909)
WARNING: Some modules could not be configured.
CuPy will be installed without these modules.
Please refer to the Installation Guide for details:
https://docs-cupy.chainer.org/en/stable/install.html
************************************************************
running build
running build_py
running build_ext
-------- Configuring Module: cuda --------
creating /tmp/tmplkkk40y0/tmp
creating /tmp/tmplkkk40y0/tmp/tmplkkk40y0
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmplkkk40y0/a.cpp -o /tmp/tmplkkk40y0/tmp/tmplkkk40y0/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmplkkk40y0/tmp/tmplkkk40y0/a.o -o /tmp/tmplkkk40y0/liba.so
creating /tmp/tmp65li67n1/tmp
creating /tmp/tmp65li67n1/tmp/tmp65li67n1
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -c /tmp/tmp65li67n1/a.cpp -o /tmp/tmp65li67n1/tmp/tmp65li67n1/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmp65li67n1/tmp/tmp65li67n1/a.o -L/usr/local/cuda-11.0/lib64 -lcublas -lcuda -lcudart -lcufft -lcurand -lcusparse -lnvrtc -o /tmp/tmp65li67n1/liba.so
creating /tmp/tmpcvan13n3/tmp
creating /tmp/tmpcvan13n3/tmp/tmpcvan13n3
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpcvan13n3/a.cpp -o /tmp/tmpcvan13n3/tmp/tmpcvan13n3/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ /tmp/tmpcvan13n3/tmp/tmpcvan13n3/a.o -o /tmp/tmpcvan13n3/a
-------- Configuring Module: cusolver --------
creating /tmp/tmp5shmzwl3/tmp
creating /tmp/tmp5shmzwl3/tmp/tmp5shmzwl3
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmp5shmzwl3/a.cpp -o /tmp/tmp5shmzwl3/tmp/tmp5shmzwl3/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmp5shmzwl3/tmp/tmp5shmzwl3/a.o -o /tmp/tmp5shmzwl3/liba.so
creating /tmp/tmppj2i3a4k/tmp
creating /tmp/tmppj2i3a4k/tmp/tmppj2i3a4k
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -c /tmp/tmppj2i3a4k/a.cpp -o /tmp/tmppj2i3a4k/tmp/tmppj2i3a4k/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmppj2i3a4k/tmp/tmppj2i3a4k/a.o -L/usr/local/cuda-11.0/lib64 -lcusolver -o /tmp/tmppj2i3a4k/liba.so
creating /tmp/tmpjakt14fe/tmp
creating /tmp/tmpjakt14fe/tmp/tmpjakt14fe
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpjakt14fe/a.cpp -o /tmp/tmpjakt14fe/tmp/tmpjakt14fe/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ /tmp/tmpjakt14fe/tmp/tmpjakt14fe/a.o -o /tmp/tmpjakt14fe/a
-------- Configuring Module: cudnn --------
creating /tmp/tmpkwdqcari/tmp
creating /tmp/tmpkwdqcari/tmp/tmpkwdqcari
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpkwdqcari/a.cpp -o /tmp/tmpkwdqcari/tmp/tmpkwdqcari/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmpkwdqcari/a.cpp:1:10: fatal error: cudnn.h: No such file or directory
1 | #include <cudnn.h>
| ^~~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: nccl --------
creating /tmp/tmp4dxlkyth/tmp
creating /tmp/tmp4dxlkyth/tmp/tmp4dxlkyth
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmp4dxlkyth/a.cpp -o /tmp/tmp4dxlkyth/tmp/tmp4dxlkyth/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmp4dxlkyth/a.cpp:1:10: fatal error: nccl.h: No such file or directory
1 | #include <nccl.h>
| ^~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: nvtx --------
creating /tmp/tmpz3ason1w/tmp
creating /tmp/tmpz3ason1w/tmp/tmpz3ason1w
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpz3ason1w/a.cpp -o /tmp/tmpz3ason1w/tmp/tmpz3ason1w/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmpz3ason1w/tmp/tmpz3ason1w/a.o -o /tmp/tmpz3ason1w/liba.so
creating /tmp/tmpxd10xfg1/tmp
creating /tmp/tmpxd10xfg1/tmp/tmpxd10xfg1
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -c /tmp/tmpxd10xfg1/a.cpp -o /tmp/tmpxd10xfg1/tmp/tmpxd10xfg1/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmpxd10xfg1/tmp/tmpxd10xfg1/a.o -L/usr/local/cuda-11.0/lib64 -lnvToolsExt -o /tmp/tmpxd10xfg1/liba.so
-------- Configuring Module: cutensor --------
creating /tmp/tmp5tq4h91x/tmp
creating /tmp/tmp5tq4h91x/tmp/tmp5tq4h91x
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmp5tq4h91x/a.cpp -o /tmp/tmp5tq4h91x/tmp/tmp5tq4h91x/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
/tmp/tmp5tq4h91x/a.cpp:1:10: fatal error: cutensor.h: No such file or directory
1 | #include <cutensor.h>
| ^~~~~~~~~~~~
compilation terminated.
command 'gcc' failed with exit status 1
-------- Configuring Module: cub --------
creating /tmp/tmpsnefkqw4/tmp
creating /tmp/tmpsnefkqw4/tmp/tmpsnefkqw4
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpsnefkqw4/a.cpp -o /tmp/tmpsnefkqw4/tmp/tmpsnefkqw4/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmpsnefkqw4/tmp/tmpsnefkqw4/a.o -o /tmp/tmpsnefkqw4/liba.so
creating /tmp/tmpbg03o52g/tmp
creating /tmp/tmpbg03o52g/tmp/tmpbg03o52g
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -c /tmp/tmpbg03o52g/a.cpp -o /tmp/tmpbg03o52g/tmp/tmpbg03o52g/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmpbg03o52g/tmp/tmpbg03o52g/a.o -L/usr/local/cuda-11.0/lib64 -lcudart -o /tmp/tmpbg03o52g/liba.so
creating /tmp/tmpb24chbwu/tmp
creating /tmp/tmpb24chbwu/tmp/tmpb24chbwu
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmpb24chbwu/a.cpp -o /tmp/tmpb24chbwu/tmp/tmpb24chbwu/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ /tmp/tmpb24chbwu/tmp/tmpb24chbwu/a.o -o /tmp/tmpb24chbwu/a
-------- Configuring Module: thrust --------
creating /tmp/tmp96ntg17b/tmp
creating /tmp/tmp96ntg17b/tmp/tmp96ntg17b
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100909 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmp96ntg17b/a.cpp -o /tmp/tmp96ntg17b/tmp/tmp96ntg17b/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmp96ntg17b/tmp/tmp96ntg17b/a.o -o /tmp/tmp96ntg17b/liba.so
creating /tmp/tmpxlp9sloj/tmp
creating /tmp/tmpxlp9sloj/tmp/tmpxlp9sloj
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100909 -c /tmp/tmpxlp9sloj/a.cpp -o /tmp/tmpxlp9sloj/tmp/tmpxlp9sloj/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/tangui/anaconda3/compiler_compat -L/home/tangui/anaconda3/lib -Wl,-rpath=/home/tangui/anaconda3/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/tmpxlp9sloj/tmp/tmpxlp9sloj/a.o -L/usr/local/cuda-11.0/lib64 -lcudart -o /tmp/tmpxlp9sloj/liba.so
creating /tmp/tmp3ppvdco1/tmp
creating /tmp/tmp3ppvdco1/tmp/tmp3ppvdco1
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -c /tmp/tmp3ppvdco1/a.cpp -o /tmp/tmp3ppvdco1/tmp/tmp3ppvdco1/a.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ /tmp/tmp3ppvdco1/tmp/tmp3ppvdco1/a.o -o /tmp/tmp3ppvdco1/a
************************************************************
* CuPy Configuration Summary *
************************************************************
Build Environment:
Include directories: ['/usr/local/cuda-11.0/include/cub', '/home/tangui/Downloads/cupy/install/../cupy/core/include', '/usr/local/cuda-11.0/include']
Library directories: ['/usr/local/cuda-11.0/lib64']
nvcc command : ['/usr/local/cuda-11.0/bin/nvcc']
Environment Variables:
CFLAGS : (none)
LDFLAGS : (none)
LIBRARY_PATH : (none)
CUDA_PATH : (none)
NVTOOLSEXT_PATH : (none)
NVCC : /usr/local/cuda-11.0/bin/nvcc
ROCM_HOME : (none)
CUPY_CUB_PATH : (none)
Modules:
cuda : Yes (version 11000)
cusolver : Yes
cudnn : No
-> Include files not found: ['cudnn.h']
-> Check your CFLAGS environment variable.
nccl : No
-> Include files not found: ['nccl.h']
-> Check your CFLAGS environment variable.
nvtx : Yes
cutensor : No
-> Include files not found: ['cutensor.h']
-> Check your CFLAGS environment variable.
cub : Yes (version 100909)
thrust : Yes (version 100909)
WARNING: Some modules could not be configured.
CuPy will be installed without these modules.
Please refer to the Installation Guide for details:
https://docs-cupy.chainer.org/en/stable/install.html
************************************************************
building 'cupy.cuda.cub' extension
gcc -pthread -B /home/tangui/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100909 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -I/home/tangui/anaconda3/include/python3.7m -c cupy/cuda/cub.cpp -o build/temp.linux-x86_64-3.7/cupy/cuda/cub.o -fopenmp
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
NVCC options: ['--generate-code=arch=compute_30,code=compute_30', '--generate-code=arch=compute_50,code=compute_50', '--generate-code=arch=compute_60,code=sm_60', '--generate-code=arch=compute_61,code=sm_61', '--generate-code=arch=compute_70,code=sm_70', '--generate-code=arch=compute_75,code=sm_75', '--generate-code=arch=compute_80,code=sm_80', '--generate-code=arch=compute_80,code=compute_80', '-O2', '--compiler-options="-fPIC"', '--std=c++11']
/usr/local/cuda-11.0/bin/nvcc -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100909 -I/usr/local/cuda-11.0/include/cub -I/home/tangui/Downloads/cupy/install/../cupy/core/include -I/usr/local/cuda-11.0/include -I/home/tangui/anaconda3/include/python3.7m -c cupy/cuda/cupy_cub.cu -o build/temp.linux-x86_64-3.7/cupy/cuda/cupy_cub.o --generate-code=arch=compute_30,code=compute_30 --generate-code=arch=compute_50,code=compute_50 --generate-code=arch=compute_60,code=sm_60 --generate-code=arch=compute_61,code=sm_61 --generate-code=arch=compute_70,code=sm_70 --generate-code=arch=compute_75,code=sm_75 --generate-code=arch=compute_80,code=sm_80 --generate-code=arch=compute_80,code=compute_80 -O2 --compiler-options="-fPIC" --std=c++11
nvcc fatal : Unsupported gpu architecture 'compute_30'
error: command '/usr/local/cuda-11.0/bin/nvcc' failed with exit status 1
Issue Analytics
- State:
- Created 3 years ago
- Reactions:2
- Comments:14 (5 by maintainers)
Top GitHub Comments
I guess I can close the issue then ? Thanks again ! I will definitely advertise Cupy even more in the lab 😉
Another workaround without touching the code is to set
CUPY_NVCC_GENERATE_CODE
: https://docs-cupy.chainer.org/en/latest/reference/environment.html#for-installation