没有带Python的PyTorch Cuda

rdlzhqv9  于 2023-01-17  发布在  Python
关注(0)|答案(3)|浏览(174)

我使用anaconda来调节我的环境,在一个项目中我必须使用我的GPU来进行网络训练。我使用pytorch来完成我的项目,我试图让CUDA工作。
我安装了cudatoolkit numba cudnn
但是,当我尝试执行以下命令时:

torch.cuda.is_available()

输出为“False”。这是我的环境:

# Name                    Version                   Build  Channel
blas                      1.0                         mkl  
bzip2                     1.0.6                h470a237_2    conda-forge
ca-certificates           2018.03.07                    0  
cairo                     1.14.12              he6fea26_5    conda-forge
certifi                   2018.8.24                py35_1  
cffi                      1.11.5           py35he75722e_1  
cloudpickle               0.5.5                    py35_0  
cudatoolkit               9.2                           0    anaconda
cudnn                     7.2.1                 cuda9.2_0    anaconda
cycler                    0.10.0                     py_1    conda-forge
cython                    0.28.5           py35hf484d3e_0    anaconda
dask-core                 0.19.2                   py35_0  
dbus                      1.13.0               h3a4f0e9_0    conda-forge
decorator                 4.3.0                    py35_0  
expat                     2.2.5                hfc679d8_2    conda-forge
ffmpeg                    4.0.2                ha0c5888_1    conda-forge
fontconfig                2.13.1               h65d0f4c_0    conda-forge
freetype                  2.9.1                h6debe1e_4    conda-forge
gettext                   0.19.8.1             h5e8e0c9_1    conda-forge
giflib                    5.1.4                h470a237_1    conda-forge
glib                      2.55.0               h464dc38_2    conda-forge
gmp                       6.1.2                hfc679d8_0    conda-forge
gnutls                    3.5.19               h2a4e5f8_1    conda-forge
graphite2                 1.3.12               hfc679d8_1    conda-forge
gst-plugins-base          1.12.5               hde13a9d_0    conda-forge
gstreamer                 1.12.5               h61a6719_0    conda-forge
harfbuzz                  1.9.0                h08d66d9_0    conda-forge
hdf5                      1.10.2               hc401514_2    conda-forge
icu                       58.2                 hfc679d8_0    conda-forge
imageio                   2.4.1                    py35_0  
intel-openmp              2019.0                      118  
jasper                    1.900.1              hff1ad4c_5    conda-forge
jpeg                      9c                   h470a237_1    conda-forge
kiwisolver                1.0.1            py35h2d50403_2    conda-forge
libedit                   3.1.20170329         h6b74fdf_2  
libffi                    3.2.1                hd88cf55_4  
libgcc-ng                 8.2.0                hdf63c60_1  
libgfortran               3.0.0                         1    conda-forge
libgfortran-ng            7.3.0                hdf63c60_0  
libiconv                  1.15                 h470a237_3    conda-forge
libopenblas               0.3.3                h5a2b251_3  
libpng                    1.6.35               ha92aebf_2    conda-forge
libstdcxx-ng              8.2.0                hdf63c60_1  
libtiff                   4.0.9                he6b73bb_2    conda-forge
libuuid                   2.32.1               h470a237_2    conda-forge
libwebp                   0.5.2                         7    conda-forge
libxcb                    1.13                 h470a237_2    conda-forge
libxml2                   2.9.8                h422b904_5    conda-forge
llvmlite                  0.24.0           py35hdbcaa40_0  
matplotlib                3.0.0            py35h0b34cb6_1    conda-forge
mkl                       2019.0                      118  
mkl_fft                   1.0.6                    py35_0    conda-forge
mkl_random                1.0.1                    py35_0    conda-forge
ncurses                   6.1                  hf484d3e_0  
nettle                    3.3                           0    conda-forge
networkx                  2.1                      py35_0  
ninja                     1.8.2            py35h6bb024c_1  
numba                     0.39.0           py35h04863e7_0  
numpy                     1.15.2           py35h1d66e8a_0  
numpy-base                1.15.2           py35h81de0dd_0  
olefile                   0.46                     py35_0  
openblas                  0.2.20                        8    conda-forge
opencv                    3.4.1            py35h6fd60c2_1  
opencv-python             3.4.3.18                  <pip>
openh264                  1.7.0                         0    conda-forge
openssl                   1.0.2p               h14c3975_0  
pandas                    0.23.4           py35h04863e7_0  
pcre                      8.41                 hfc679d8_3    conda-forge
pillow                    5.2.0            py35heded4f4_0  
Pillow                    5.3.0                     <pip>
pip                       10.0.1                   py35_0  
pixman                    0.34.0               h470a237_3    conda-forge
pthread-stubs             0.4                  h470a237_1    conda-forge
pycparser                 2.19                     py35_0  
pyparsing                 2.2.2                      py_0    conda-forge
pyqt                      5.6.0            py35h8210e8a_7    conda-forge
python                    3.5.6                hc3d631a_0  
python-dateutil           2.7.3                      py_0    conda-forge
pytorch                   0.4.1           py35_py27__9.0.176_7.1.2_2    pytorch
pytz                      2018.5                   py35_0  
pywavelets                1.0.0            py35hdd07704_0  
qt                        5.6.2                hf70d934_9    conda-forge
readline                  7.0                  h7b6447c_5  
scikit-image              0.14.0           py35hf484d3e_1  
scipy                     1.1.0            py35hfa4b5c9_1  
setuptools                40.2.0                   py35_0  
sip                       4.18.1           py35hfc679d8_0    conda-forge
six                       1.11.0                   py35_1    conda-forge
sqlite                    3.25.2               h7b6447c_0  
tk                        8.6.8                hbc83047_0  
toolz                     0.9.0                    py35_0  
torchvision               0.1.9            py35h72e4c6f_1    soumith
tornado                   5.1.1            py35h470a237_0    conda-forge
wheel                     0.31.1                   py35_0  
x264                      1!152.20180717       h470a237_1    conda-forge
xorg-kbproto              1.0.7                h470a237_2    conda-forge
xorg-libice               1.0.9                h470a237_4    conda-forge
xorg-libsm                1.2.2                h8c8a85c_6    conda-forge
xorg-libx11               1.6.6                h470a237_0    conda-forge
xorg-libxau               1.0.8                h470a237_6    conda-forge
xorg-libxdmcp             1.1.2                h470a237_7    conda-forge
xorg-libxext              1.3.3                h470a237_4    conda-forge
xorg-libxrender           0.9.10               h470a237_2    conda-forge
xorg-renderproto          0.11.1               h470a237_2    conda-forge
xorg-xextproto            7.3.0                h470a237_2    conda-forge
xorg-xproto               7.0.31               h470a237_7    conda-forge
xz                        5.2.4                h14c3975_4  
zlib                      1.2.11               ha838bed_2

我的桌面有一个NVIDIA GeForce GTX 970(所以它是CUDA可用)也出于某种原因,正如你可以在这里看到:

我的显卡不显示,但是当使用

lspci -v

命令,我可以看到我的显卡在那里。不知道是否有什么关系。谁知道我可以修复这个?

6fe3ivhb

6fe3ivhb1#

您需要使用https://pytorch.org/get-started/locally/“一步到位”地安装pytorch来构造anaconda命令。
使用Anaconda中的标准配置,您可以获得:

conda install pytorch torchvision cudatoolkit=10.2 -c pytorch

(请始终在https://pytorch.org/get-started/locally/上检查此命令是否仍然是最新的。)
你似乎需要正确的cuda10.2版本的包来匹配pytorch所能处理的内容,这就是@RussellGallop的有用信息的含义。
我们可以看到,不建议分别安装pytorch和cuda,而建议安装Anaconda,这与您的回答相反:
Anaconda是我们推荐的软件包管理器,因为它安装了所有依赖项。

卸载和安装优于修复

如果出现问题,你最好卸载所有包含的软件包,然后应用https://pytorch.org/get-started/locally/重新获取命令,而不是尝试用单独的安装来修复它。因此,如果你想卸载,你需要使用与安装完全相同的命令,但要用“conda uninstall”代替。
对于上面的示例,uninstall命令应为:

conda uninstall pytorch torchvision cudatoolkit=10.2 -c pytorch

这需要再次“一次卸载“,这是pytorch敏感安装的另一个暗示,单独安装是有风险的。

oxf4rvwz

oxf4rvwz2#

修正:我单独安装了CUDA,而不是通过水蟒,现在它可以工作了。如果有人知道为什么在水蟒中安装CUDA时它不工作,请随意回答

vqlkdk9b

vqlkdk9b3#

你的CUDA安装需要与你的NVidia驱动程序兼容(不是由Anaconda安装的)。我在Windows上的Anaconda也遇到了类似的问题。我忽略了torch.cuda.is_available()检查,并试图发送一个Tensor到GPU:

device = torch.device("cuda")
torch.Tensor(1).to(device)

这给出了一个更有帮助的信息:

The NVIDIA driver on your system is too old (found version 10010).
Please update your GPU driver by downloading and installing a new
version from the URL: http://www.nvidia.com/Download/index.aspx
Alternatively, go to: https://pytorch.org to install
a PyTorch version that has been compiled with your version
of the CUDA driver.

相关问题