Pycharm出现ImportError或DLL load failed(CuPy is not correctly installed)

Posted vodka、

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pycharm出现ImportError或DLL load failed(CuPy is not correctly installed)相关的知识,希望对你有一定的参考价值。

项目场景:

可能很多人和我一样,import某个库之后,出现了importError:的错误或者是DLL load failed:
举个例子:

  File "***\\Anaconda3\\lib\\site-packages\\spyder\\utils\\site\\sitecustomize.py", line 705, in runfile
    execfile(filename, namespace)
  File "***\\Anaconda3\\lib\\site-packages\\spyder\\utils\\site\\sitecustomize.py", line 102, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)
  File "D:/Share/Documents/Python/TensorSolve/untitled0.py", line 1, in <module>
    import cupy as cp
  File "***\\Anaconda3\\lib\\site-packages\\cupy\\__init__.py", line 32, in <module>
    six.reraise(ImportError, ImportError(msg), exc_info[2])
  File "***\\Anaconda3\\lib\\site-packages\\six.py", line 692, in reraise
    raise value.with_traceback(tb)
  File "***\\Anaconda3\\lib\\site-packages\\cupy\\__init__.py", line 11, in <module>
    from cupy import core  # NOQA
  File "***\\Anaconda3\\lib\\site-packages\\cupy\\core\\__init__.py", line 6, in <module>
    from cupy.core.core import absolute  # NOQA
ImportError: CuPy is not correctly installed.
If you are using wheel distribution (cupy-cudaXX), make sure that the version of CuPy you installed matches with the version of CUDA on your host.
Also, confirm that only one CuPy package is installed:
  $ pip freeze
If you are building CuPy from source, please check your environment, uninstall CuPy and reinstall it with:
  $ pip install cupy --no-cache-dir -vvvv
  Check the Installation Guide for details:
  https://docs-cupy.chainer.org/en/latest/install.html
  ImportError: DLL load failed: 找不到指定的模块。

问题描述:

关键词:1、CuPy is not correctly installed.2、DLL load failed:


原因分析:

出现这个问题首先要确认,cuda版本和Cupy版本是否匹配,两者的关系可从官方说明书中查到,在说明书中你还能查到更多的信息,匹配信息如下图。

我的cuda版本是10.0的,因此我在安装cupy时用的命令是:

pip install cupy-cuda100 -i https://pypi.tuna.tsinghua.edu.cn/simple

(为什么要加-i https://pypi.tuna.tsinghua.edu.cn/simple?因为它快呀!)


解决方案:

装好之后,疯狂运行我的程序,然后还是一直报上述的错误,我一度怀疑是不是我的cuda版本和cupy没有匹配,其实是完全匹配的。DLL load failed可能是由于环境配置不当导致的(或者说是没有配置环境)这时候需要右击此电脑–属性–高级系统设置–高级–环境变量

在系统变量或者个人变量添加cuda的环境(因为我的是服务器,涉及到多人使用的问题,因此我修改的是个人变量)修改个人变量不影响其他用户的使用,如果是个人电脑,就不需要顾虑这么多了。
找到Path变量,将下面的变量环境添加到系统内:

C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\libnvvp
C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\bin
C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\lib\\x64
C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\extras\\CUPTI\\libx64

该路径就是安装cuda的路径,因为cuda版本的不同,路径名称也有略微的差别。
为了保险起见,我在Pycharm中也配置了同样的环境。单击Run–Edit Configurations…,找到添加环境的位置。


将上述的四个路径设置为环境变量,我的报错信息就消失不见了。(如果还是有问题,欢迎评论区留言!)

以上是关于Pycharm出现ImportError或DLL load failed(CuPy is not correctly installed)的主要内容,如果未能解决你的问题,请参考以下文章

Sqlite3 ImportError: DLL load failed

用pycharm+flask 建立项目以后运行出现ImportError: No module named flask-login问题

PyCharm:ImportError 没有名为 X 的模块?

PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法

导入tensorflow.出现importError: DLL load failed: 找不到指定的模块。python3.7

Tensorflow 运行错误记录之“引用tensorflow包运行代码提示:ImportError: DLL load failed: 找不到指定的模块。“