记:第一次更新服务器CUDA和GPU驱动
因有需求需要改动centos7中的CUDA(更新到10)和GUP 的driver(更新到410)的版本。
事先需要查看原版本的信息,使用nvidia-smi可以查看driver的版本信息(最新的也显示CUDA的版本信息);使用nvcc –version查看CUDA的信息。
服务器的基本配置是:CUDA的原始版本是9.1.85,driver的原始版本是390.46,GPU的型号是Tesla P4,系统是centos7。(网上的教程说是先更新CUDA再更新driver,我也是按照上述步骤来的。)
首先,打开官网,勾选配置(https://developer.nvidia.com/cuda-toolkit-archive)
图1 CUDA的下载
(PS:Installer Type的选择没有那么重要,每一个选择都给出了相关的安装步骤)
直接给定步骤安装即可。对于CUDA,我选择了直接覆盖,所以在安装完这个版本的时候系统中会存在两个版本的CUDA,一个是CUDA9.1,一个是CUDA10.0。所以多版本需要配置环境,将CUDA10.0给添加到环境中。代码如下:
####sudo vim ~/.bashrc
export PATH=$PATH:/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64/{LD_LIBRARY_PATH:+:{ LD_LIBRARY_PATH }}
export CUDA_HOME=/usr/local/cuda-10.0
#跳出
#####nvcc –version
这时候应该输出的CUDA的信息是你选定的,如果还是原版,建议####sudo reboot(不允许重启,再想辙)
更新完CUDA之后,接着可以更新driver,打开官网:https://www.nvidia.com/Download/index.aspx?lang=cn,根据自己电脑的版本勾选信息,
图2 GPU的driver的下载
(PS:重要的事情说3遍,因为我的系统是centos7的,所以我选的“操作系统”是Linux 64-bit,如果选错了,之后会报错)
我选的是后缀是.run的安装包,使用的安装命令如下:
####sudo sh ******************************.run
(PS:安装的过程我是选择了先卸载,后安装,据说直接覆盖也是可以的)
安装成功之后在命令行中输入####nvidia-smi ,有如下显示,则表示CUDA和driver升级成功!
自己遇到的坑:
1、使用nvidia-detect 命令检测,驱动发现符合的驱动版本是410.66,且不在yum中。对于不在yum中,我直接换了yum的环境,但是还是没有,最好的方法是直接下载,使用sudo wget “******(下载的链接)******” 下载的地址是(以CUDA为例),选择“下载按键”后单击右键,选择“复制链接地址”,这样即找到了下载的链接。
nvidia-detec推荐的是410.66的,官网上不一定有,一切以官网的为主。
2、 在GPU的驱动下载过程中,将操作系统(自己的操作系统是centos7)错误的选择了Linux 64-bit RHEL7(正确的应该是Linux 64-bit)。对于这个驱动,也是可以安装的,但是CUDA和驱动的版本并不匹配,所以使用####nvidia-smi命令会有如下的报错:
这样就不得不重新下载正确版本的driver,重新安装后才正确运行。
记:第一次更新服务器CUDA和GPU驱动的更多相关文章
- ubuntu16.04 Detectron目标检测库配置(包含GPU驱动,Cuda,Caffee2等配置梳理)
Detectron概述 Detectron是Facebook FAIR开源了的一个目标检测(Object Detection)平台. 用一幅图简单说明下Object Detection.如Mask R ...
- [转]如何远程连接运行OpenGL/Cuda 等GPU程序
发现一篇神文,解决了困扰许久的远程桌面OpenGL/GPU 等问题... 原地址在这:http://www.tanglei.name/how-to-run-gpu-programs-using-rem ...
- GPU驱动兼容性问题
GPU驱动兼容性问题 问题描述: 将笔记本的GTX860M 的驱动升级到了376.09版本,出现登陆界面,输入密码后黑屏. 解决思路: 由于正常显示登陆窗口,且可以输入密码,基本排除硬件问题和集成显卡 ...
- zeromq学习记录(二)天气更新服务器使用ZMQ_SUB ZMQ_PUB
/************************************************************** 技术博客 http://www.cnblogs.com/itdef/ ...
- linux上配置subversion服务器端安装配置并使用svn,windows本地检出,设置同步更新服务器的钩子
参考http://my.oschina.net/junn/blog/164041 http://songxj.blog.51cto.com/620981/396113 http://5iwww.blo ...
- Zookeeper动态更新服务器列表
-------------------------------------------------------------------------------------- [版权申明:本文系作者原创 ...
- 为什么作为下游的WSUS更新服务器总有一直处于下载状态的文件
/* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-ts ...
- 记一次服务器路由跟踪 (2019-01-23 TODO)
记一次服务器路由跟踪 有用户反馈网站 无法访问. 现象如下: ping 没有反馈,确认了可以 ping 通其它的网站. tracert 跟踪到服务器商的内部就没的反应了. 同样一家的服务器商,另外一台 ...
- Openfire更新服务器名称的方法
转自:http://blog.csdn.net/vikione/article/details/5996932 Openfire更新服务器名称的方法: 1.登陆openfire管理页面,在主页面下方选 ...
随机推荐
- python之路day14--列表生成式、生成器generator、生成器并行
列表生成式 列表生成式阅读量: 44 现在有个需求,现有列表a=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],要求你把列表里的每个值加1,你怎么实现?你可能会想到2种方式 二逼青年 ...
- 【ZJOJ1321】灯
题目 贝希和她的闺密们在她们的牛棚中玩游戏.但是天不从人愿,突然,牛棚的电源跳闸了,所有的灯都被关闭了.贝希是一个很胆小的女生,在伸手不见拇指的无尽的黑暗中,她感到惊恐,痛苦与绝望.她希望您能够帮帮她 ...
- Kafka(华为FusionInsight )操作命令
华为大数据kafka操作web界面创建角色.用户.用户管理角色进入服务器环境,进入客户端目录/opt/hadoopclient,导入环境变量source bigdata_env.切换用户kinit k ...
- SQLite为何要用C语言来开发?
SQLite 选择 C 语言的理由是?为什么不选择 Go 或者 Rust? C 语言是最好的 SQLite 在 2000 年 5 月 29 日发布,并一直使用 C 语言实现.C 语言一直是实现 SQL ...
- mysql COUNT()函数 语法
mysql COUNT()函数 语法 作用:返回匹配指定条件的行数.博智达直线电机平台 语法:SELECT COUNT(*) FROM table_name mysql COUNT()函数 示例 // ...
- package.json文件
http://javascript.ruanyifeng.com/nodejs/packagejson.html#toc7(copy) 通常我们使用npm init命令来创建一个npm程序时,会自动生 ...
- 树状数组(Binary Indexed Tree)
树状数组(Binary Indexed Tree,BIT) 是能够完成下述操作的数据结构. 给一个初始值全为 0 的数列 a1, a2, ..., an (1)给定 i,计算 a1+a2+...+ai ...
- JMS学习七(ActiveMQ之Topic的持久订阅)
非持久化订阅持续到它们订阅对象的生命周期.这意味着,客户端只能在订阅者活动时看到相关主题发布的消息.如果订阅者不活动,它会错过相关主题的消息.如果花费较大的开销,订阅者可以被定义为durable(持久 ...
- Spring Cloud Stream教程(四)消费群体
虽然发布订阅模型可以轻松地通过共享主题连接应用程序,但通过创建给定应用程序的多个实例来扩展的能力同样重要.当这样做时,应用程序的不同实例被放置在竞争的消费者关系中,其中只有一个实例预期处理给定消息. ...
- CSS 处理溢出强行换行
CSS折行样式 word-break:break-all;允许单词拆分折行 word-break:keep-all;只能在半角空格或连字符处换行. word-wrap:break-word;在长单词或 ...