我的显卡型号是NVIDIA GeForc GTX 950M,系统win7
之前安装pytorch的方法是:
conda install -c peterjc123 pytorch cuda80
结果出现了问题,显示PyTorch no longer supports this GPU because it is too old.
首先要卸载之前安装的pytorch:
conda uninstall pytorch
安装方法有两种:
1.pytorch源安装:
参考链接:
https://blog.youkuaiyun.com/u010974701/article/details/79807190
https://blog.youkuaiyun.com/qq_32492561/article/details/79671147
https://github.com/pytorch/pytorch#installation
其中要注意注意Windows的cmd中cd指令切换路径(和Linux不同):
https://blog.youkuaiyun.com/u010327061/article/details/80298926
2.下载pytorch离线安装(我选择的是这种方法)
参考链接:https://zhuanlan.zhihu.com/p/26871672
https://blog.youkuaiyun.com/u011501388/article/details/78008929
方法如下:(亲测可用)
从百度云进行下载,大家下载之后,键入如下几条指令:(注:0.4.0及以后的不再存放)
cd /d "下载包的路径"
conda install numpy mkl cffi
conda install --offline pytorch????.tar.bz2
注:文件名说明:
一般为以下两种形式
PACKAGENAME-VERSION-PYTHON_VERSIONcuCUDA_VERSION.tar.bz
或
PACKAGENAME-VERSION-PYTHON_VERSION_cudaCUDA_VERSION_cudnnCUDNN_VERSIONHASH_REVISION.tar.bz2
PACKAGENAME 分为 pytorch 和 pytorch_legacy, 分别为NT内核版本10和6的两类系统进行编译;VERSION 代表 pytorch 的版本;而PYTHON则代表python程序的版本,主要分为3.5和3.6;CUDA_VERSION和CUDNN_VERSION分别代表CUDA和cuDNN编译的版本;REVISION代表修订号。请自行选择合适的版本进行安装。
我的系统是win7,内核版本是6,Python是3.5.5,cuda是8.0,选择的安装包是:pytorch_legacy-0.3.0-py35_0.3.0cu80.tar.bz2
安装之后,也千万要注意,要在主代码的最外层包上
if __name__ == '__main__':
附一段简单测试CUDA与cuDNN是否工作正常的代码:
# CUDA TEST
import torch
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx)
# CUDNN TEST
from torch.backends import cudnn
print(cudnn.is_acceptable(xx))
如果CUDA工作不正常,那就不能使用.cuda()将模型和数据通过GPU进行加速了。而如果cuDNN不能正常工作,那就使用如下代码关掉它:
cudnn.enabled = False