pytorch,cuda,cudatoolkit,driver四者关系如下:

  • 系统的Nvidia Driver决定着系统最高可以支持什么版本的cuda和cudatoolkit,Nvidia Driver是向下兼容的,详情如下(见Nvidia Driver和Cuda对应关系)
  • cuda和cudatoolkit不同,前者说的是系统安装的cuda,它是由Nvidia官方提供的(/usr/local/cuda就是系统安装的cuda的软链接),这与我们要安装的pytorch几乎没有什么关系。后者是anaconda官方提供的用来build pytorch的一个工具包,它是Nvidia所提供的cuda的一个子集。
  • pytorch和cudatoolkit版本并不是一一对应的关系,一个pytorch版本可以有多个cudatoolkit版本与之对应。例如1.5.1版本的pytorch,既可以使用9.2版本的cudatoolkit,也可以使用10.2版本的cudatoolkit。

pytorch安装的坑

只指定pytorch版本来安装不一定是能work的,例如执行conda install pytorch=X.X.X -c pytorch时,conda会自动为你选择合适版本的cudatoolkit。但conda只能保证你的pytorch和cudatoolkit版本一定是对应的,但并不能保证pytorch可以正常使用,因为系统的Nvidia Driver有可能不支持你所安装的cudatoolkit版本。

所以,除非你对你的Nvidia driver版本很有自信,否则,还是先查看系统Nvidia Driver的版本,并在上方图表中查询最高支持的cudatoolkit版本,然后指定cudatoolkit版本来安装pytorch吧。例如系统的Nvidia Driver版本为440.33,查询到最高支持cudatoolkit版本为10.2,则可以使用conda install pytorch cudatoolkit=10.2 -c pytorch命令安装pytorch。

当然,如果你对pytorch版本有特别的要求,你可以同时指定pytorch和cudatoolkit的版本。如果这两个版本不能兼容,系统会报错,例如:

conda install pytorch=1.5.1 cudatoolkit=9.0 -c pytorch

conda会告诉你:

Solving environment: failedUnsatisfiableError: The following specifications were found to be in conflict:- cudatoolkit=9.0 -> __cuda[version='>=9.0']- pytorch=1.5.1
Use "conda info <package>" to see the dependencies for each package.

如果你的Nvidia Driver最高支持的cudatoolkit版本为9.0,而你又一定要用1.5.1版本的pytorch,那么你必须升级系统的Nvidia Driver版本。

pytorch,cuda,cudatoolkit,driver版本详解相关推荐

  1. Pytorch|YOWO原理及代码详解(二)

    Pytorch|YOWO原理及代码详解(二) 本博客上接,Pytorch|YOWO原理及代码详解(一),阅前可看. 1.正式训练 if opt.evaluate:logging('evaluating ...

  2. Pytorch | yolov3原理及代码详解(二)

    阅前可看: Pytorch | yolov3原理及代码详解(一) https://blog.csdn.net/qq_24739717/article/details/92399359 分析代码: ht ...

  3. 时间序列预测任务PyTorch数据集类——TimeSeriesDataSet 类详解

    时间序列预测任务PyTorch数据集类--TimeSeriesDataSet 类详解 当进行时间序列预测或时间序列分析时,通常需要对数据进行预处理和转换以提高模型的效果和准确性.TimeSeriesD ...

  4. Apache Hadoop版本详解

    由doop版本混乱多变,因此,Hadoop的版本选择问题一直令很多初级用户苦恼.本文总结了ApacheHadoop和Cloudera Hadoop的版本衍化过程,并给出了选择Hadoop版本的一些建议 ...

  5. eclipse版本详解以及下载安装步骤及启动eclispe报错整理

    一.eclispe版本详解 本段内容转载自:https://www.cnblogs.com/chenmingjun/p/8404628.html 1.eclipse版本代号一览表 Eclipse的设计 ...

  6. rpm安装mysql5.6_利用rpm安装mysql 5.6版本详解

    前言 其实之前使用yum安装MySQL确实很方便,但是默认安装的myql5.0版本的,不支持utf8mb4(utf8mb4扩展到一个字符最多能有4节,所以能支持更多的字符集,比如支持emoji表情)编 ...

  7. CUDA: Occupancy(占用率)详解

    #CUDA: Occupancy(占用率)详解 占用率是指每个多处理器(Streaming Multiprocessor,SM)的活动线程束(warps)数量与实际的活动warps数量的比率. 高的占 ...

  8. 【Pytorch】torch.argmax 函数详解

    文章目录 一.一个参数时的 torch.argmax 函数 1. 介绍 2. 实例 二.多个参数时的 torch.argmax 函数 1. 介绍 2. 实例 实例1:二维矩阵 实例2:三维矩阵 实例3 ...

  9. PyTorch入门笔记-matmul函数详解

    PyTorch入门笔记-matmul函数详解 本文转载自:PyTorch入门笔记-matmul函数详解 - 腾讯云开发者社区-腾讯云 (tencent.com) 41409)]

最新文章

  1. 通过练习题学习磁盘知识
  2. T25健身视频全集+课表
  3. HOWTO:如何在代码中获取安装包目标机上的Windows Installer(MSI)版本
  4. Java黑皮书课后题第7章:*7.21(整数求和)编写程序,从命令行输入不定数目的整数,然后显示它们的和
  5. MVC 扩展方法特点
  6. linux下线程控制
  7. ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
  8. 如何在C++中产生随机数
  9. html 表格转换为dbf,DBF Excel 文件相互转换-完美教程资讯
  10. 《三级医院评审标准(2020年版)》及解读:医疗机构要不断加强信息化建设
  11. 移动硬盘H盘损坏文件系统变成RAW如何恢复
  12. python版本切换 for Windows(Anaconda) Linux(pyenv)
  13. 【Unity2D】关卡编辑好帮手——TileMap
  14. Python报错:‘unicodeescape‘ codec can‘t decode bytes in position 2-3: truncated \UXXXXXXXX escape
  15. 《奋斗》中徐志森的财商课
  16. tensorflow中的shape函数理解
  17. 认识计算机微课导学单,微课“任务单”与“导学案”之比较
  18. ScrollView和GestureDetector触屏事件冲突
  19. buuctf-misc-[SWPU2019]Network1
  20. system x 常用工具链接—cuixf@DC

热门文章

  1. 微信HOOK 删除好友
  2. Unity(C#)读写xml文件详解
  3. 键盘按键VK键值列表及宏定义
  4. 心理学实验学习pygame编程-贪吃蛇(2)
  5. AndroidStudio SSL peer shut down incorrectly 问题
  6. 集合中篇—栈与队列区块链
  7. 【旅游攻略】:帽儿山旅游攻略
  8. android 小米闹钟,为了叫不醒的早上,我买了个闹钟,小米小爱智能闹钟开箱
  9. python(2)带解析和要点
  10. Git自己分支合并dev分支