I have a project in python2.7.11 using chainer and cupy. After updating version of Chainer from 1.22 to 4.1.0, I can not using cupy
>>> import cupy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named cupy
This is the way I installed chainer1.22. It was able to import cupy successfully without installing cupy.
pip install chainer==1.22,
Check
>>> import chainer
>>> import cupy
>>> chainer.cuda.available
True
I can see that CUDA is available with chainer1.22
So I uninstall chainer 1.22
pip uninstall chainer
Install chainer 4.1.0
pip install chainer==4.1.0
Result is
>>> import chainer
>>> import cupy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named cupy
>>> chainer.cuda.available
False
Can see that cuda is not available with chainer version 4.1.0. So I try to install cupy with pip
pip install cupy
Log when installing
Requirement already satisfied: numpy>=1.9.0 in c:\users\UserName\appdata\local\continuum\anaconda2\lib\site-packages (from cupy)
Requirement already satisfied: six>=1.9.0 in c:\users\UserName\appdata\local\continuum\anaconda2\lib\site-packages (from cupy)
Requirement already satisfied: fastrlock>=0.3 in c:\users\UserName\appdata\local\continuum\anaconda2\lib\site-packages (from cupy)
Building wheels for collected packages: cupy
Running setup.py bdist_wheel for cupy ... /
.
.
.
Microsoft (R) C/C++ Optimizing Compiler Version 15.00.30729.01 for x64
Copyright (C) Microsoft Corporation. All rights reserved.
tmpxft_000027f8_00000000-1.cpp
nvcc fatal : Host compiler targets unsupported OS.
error: command 'C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v8.0\\bin/nvcc.exe' failed with exit status 1
----------------------------------------
Failed building wheel for cupy
Running setup.py clean for cupy
Failed to build cupy
Installing collected packages: cupy
.
.
.
Microsoft (R) C/C++ Optimizing Compiler Version 15.00.30729.01 for x64
Copyright (C) Microsoft Corporation. All rights reserved.
tmpxft_0000456c_00000000-1.cpp
nvcc fatal : Host compiler targets unsupported OS.
error: command 'C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v8.0\\bin/nvcc.exe' failed with exit status 1
----------------------------------------
Command "C:\Users\UserName\AppData\Local\Continuum\Anaconda2\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\UserName\\appdata\\local\\temp\\pip-build-gwroh2\\cupy\\setup.py';
f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();
exec(compile(code, __file__, 'exec'))" install --record c:\users\UserName\appdata\local\temp\pip-tbtixt-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in c:\users\UserName\appdata\local\temp\pip-build-gwroh2\cupy\
Failed to buil cupy I checked nvcc version
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Mon_Jan__9_17:32:33_CST_2017
Cuda compilation tools, release 8.0, V8.0.60
The same problem occurs when I try installing cupy by pip with chainer1.22 environment
This is my environment
Windows 10 pro 64bit
Anaconda 2.4.11
NVDIA GTX 1060 6GB, Driver Version: 398.11
CUDA 8.0
Visual studio 2015
I referenced this post But it doesnt work for me.
HOW CAN I IMPORT CUPY WITH CHAINER4.1.0?
Thank you for reading my question!
As far as I know, chainer and cupy become separated after chainer version 2. So cupy is automatically installed with chainer version 1, but you need to install cupy separately after chainer version 2. So you need to install cupy but I don't know the reason why build failed.
If you can understand the CUDA version which you are using, you can install from built package cupy-cudaXX
where XX represents your CUDA version.
Try below:
# make sure cupy is uninstalled
pip uninstall cupy
pip uninstall cupy
# based on the cuda version, install command changes.
# Ex. CUDA version is 8.0
pip install cupy-cuda80
# Ex2. CUDA version is 9.0
# pip install cupy-cuda90