首先官方文档有cuda驱动和toolkit和Linux内核本,gcc版本的对应关系,其中也有一些安装过程可参考:

https://developer.nvidia.com/cuda-toolkit-archive

此网址也包括各个版本的cuda驱动与库

cuda文件版本命名理解:

NVIDIA-Linux-x86_64-450.191.01.run   此为run文件,对应的还有rpm包,这种文件就是只包含驱动文件安装,其中Linux-x86_64为系统型号,450.191.01为驱动版本,其中450这个数字越大越好,可以对之前版本的cuda toolkit向下兼容的

cuda_11.4.4_470.82.01_linux.run 这种命名的不光包含驱动,还有对应的cuda toolkit库文件,11.4.4就是该安装包内的cuda库的版本,470就是安装包内的驱动版本,同时这个文件名也告诉我们,11.4.4的库和470的驱动是特定兼容的。此安装包在安装时可以选择是否安装驱动或者库。

cuda_10.2.2_linux.run  这种一般就是补丁文件。

注(参考理解):1.有GPU驱动版本。使用 `nvidia-smi` 查询它。2.有一个与驱动相关的CUDA兼容版本(特定GPU驱动版本与其相关的CUDA兼容版本之间存在1:1的对应关系)。与最新驱动程序捆绑在一起的 `nvidia-smi` 工具将显示它们拥有的 CUDA 兼容版本。3. 有一个 CUDA 运行时版本,它将与您用于构建特定运行时 API 代码的运行时 API 相关联。例如,您可以使用 `nvcc -v` 查询,或者使用 `deviceQuery` 示例代码查询最后两件事。

系统中查看GPU信息

系统安装完成之后,进入系统,使用lspci  查询一下GPU是否存在、型号信息是什么。

[root@node01 ~]# lspci | grep -i nvidia

或者直接问。。

下载NVIDIA Tesla A100驱动

通过lspci查询到GPU的型号之后,访问官网 nvidia.com下载驱动程序可以按照如下选择,选择产品类型、系列、型号、然后根据自己的操作系统来选择。 
注意:如果操作系统是 ,尽量选择Linux 32-bit/Linux 64-bit,不需要选择详细的Linux发行版本。测试是发现选择详细的Linux发行版本,安装驱动之后,找不到nvidia-smi 。

https://www.nvidia.cn/Download/index.aspx?lang=cn或者

https://developer.nvidia.com/cuda-toolkit-archive

https://www.nvidia.com/Download/index.aspx

安装gcc等依赖包

当安装GPU驱动时,提示缺少相关的依赖包,在此,我们需要提前安装相关的依赖包,目前需要用到的是gcc , g++ , make :

[root@localhost ~]# yum -y install gcc gcc-c++ kernel-devel make

sudo yum autoremove -y gcc*
sudo yum autoremove -y cpp*
sudo yum autoremove -y dkms sudo rm -rf /opt/rh #删除由devtoolset安装的gcc
sudo rm -rf /usr/lib/gcc
sudo rm -rf /usr/libexec/gcc
whereis gcc sudo yum install -y gcc
sudo yum install -y gcc-c++
sudo yum install -y glibc-devel gcc -v

清理gcc参考

禁用nouveau,不然可能在安装时256退出

当系统安装完成之后,会安装系统开源的NVIDIA驱动版本,名称为nouveau。查看nouveau驱动是否加载

lsmod |grep -i nouveau

编辑 /etc/default/grub文件,修改 GRUB_CMDLINE_LINUX一行(自己在安装时这一步好像并没有实际操作):

保存退出,更新grub:

[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-1160.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-91fd57f1c90a4a2da20ef93ed7f886c6
Found initrd image: /boot/initramfs-0-rescue-91fd57f1c90a4a2da20ef93ed7f886c6.img
done
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.efi.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-1160.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-91fd57f1c90a4a2da20ef93ed7f886c6
Found initrd image: /boot/initramfs-0-rescue-91fd57f1c90a4a2da20ef93ed7f886c6.img

更新grup

编辑 /lib/modprobe.d/dist-blacklist.conf,把 blacklist nvidiafb 改成 #blacklist nvidiafb(注释掉,打开),然后在最下面添加 blacklist nouveau和 options nouveau modeset=0

[root@localhost ~]# vim /lib/modprobe.d/dist-blacklist.conf

# blacklist nvidiafb

blacklist nouveau

options nouveau modeset=0

备份initrams并使用dracut重新建立initramfs并重启系统:

[root@localhost ~]# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

[root@localhost ~]# dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

[root@localhost ~]#  reboot

 
lsmod | grep nouveau
 

安装NVIDIA GPU驱动

安装下载的GPU驱动:NVIDIA-Linux-x86_64-510.47.03.run ,目前驱动版本为:510.47.03,如下执行该驱动文件,即可安装。

sudo sh NVIDIA-Linux-x86_64-450.191.01.run

nvidia-smi  查看驱动是否安成功

安装cuda

sudo  sh

需要配置环境变量

sudo vim /etc/profile  然后执行 source /etc/profile

或者 sudo vim ~/.bashrc  然后执行 source ~/.bashrc  激活环境变量

添加内容如下,一般在安装后也会在屏幕输出中提示:

export LD_LABRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.2/lib64
export PATH=$PATH:/usr/local/cuda-10.2/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.2

相同效果:

export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

验证安装

为 nvcc命令创建一个软连接到/usr/bin目录:(此步骤实际微操作也验证出来了)

sudo ln -s /usr/local/cuda/bin/nvcc /usr/bin/nvcc

输入命令nvcc -V 或者 nvcc --version

查看是否安装成功。

安装过程可能需要gcc的版本进行升级变更等,不然会有内核冲突或者256退出。

centos7.8GPU服务器搭建的更多相关文章

  1. 基于腾讯Centos7云服务器搭建SVN版本控制库

    基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...

  2. 基于CentOS7的服务器搭建(LAMP环境)

    基于CentOS7的服务器环境搭建(LAMP环境) 一.安装MySQL组件 1.由于在CentOS7中,默认yum安装库中不含有mysql,我们可以下载mysql的分支MariaDB,如果必须要下my ...

  3. centos7 svn服务器搭建

    系统环境:centos 7.5 yum安装svn yum install subversion -y 创建svn 版本库目录 mkdir -p /var/svn/svnrepos 在版本库目录下创建版 ...

  4. Centos7 ftp服务器搭建

    1.使用yum安装ftp服务端: yum install -y vsftpd 2.使用yum安装ftp客户端: yum install -y ftp.x86_64 3.开启ftp服务设置开机启动并查看 ...

  5. Samba centos7文件共享服务器搭建教程,可以更改任意需求操作配置详解。

    先安装软件   yum -y install samba-client 请看如下配置文件说明 [gongxiang]       comment = This is my shared folder  ...

  6. 阿里云服务器搭建java环境(jdk+tomcat+oracle11g)

    一.JDK配置 1.在centos 7的更新源中有JDK,使用yum即可下载安装 查看库中版本 [root@localhost ~]# yum search java|grep jdk 选择需要版本进 ...

  7. 【SVN】CentOS7.0下搭建SVN服务器

    SVN服务器搭建 最近接手了天赋吉运的SVN项目管理,那么学会搭建SVN服务器就成为了必须的技能.这篇文章就来讲一讲在CentOS7.0下如何搭建SVN服务器 1,下载安装SVN版本 yum inst ...

  8. centos7.3给搭建SVN服务器

    centos7.3给搭建SVN服务器 1 安装svnserver yum install subversion 2 查看版本 svnserve --version 3 创建版本库 3.1 运行以下命令 ...

  9. centos7 Intellij Idea 授权服务器搭建(Jetbrain 家族系列IDE)

    centos7 Intellij Idea 授权服务器搭建 1.上传破解文件 我用的是Xshell客户端,有上传功能,但是linux必须先装lrzsz,也可以通过其他方式传到linux上 yum -y ...

  10. Centos7服务器搭建网络家园和论坛

    环境:Centos7 工具:mysql,php,httpd 目的:熟练掌握httpd服务器搭建和个服务器之间的配合. 有兴趣的朋友可以来实践一下,我会提供各种源码进行搭建. 网络家园和论坛源码:htt ...

随机推荐

  1. [python] 基于paramiko库操作远程服务器

    SSH(Secure Shell)是一种网络安全协议,能够使两台计算机安全地通信和共享数据.目前,SSH协议已在世界各地广泛使用,大多数设备都支持SSH功能.SSH的进一步说明见:深入了解SSH.SS ...

  2. mysql 1366 - Incorrect string value

    mysql 插入中文时报错  mysql 1366 - Incorrect string value... 这是由于 数据库 / 表 / 表字段 编码格式未设置好造成的 解决办法: 1.查看编码是否符 ...

  3. Java环境搭载的低级错误

    关于Java环境搭载的问题 在按照狂神的教程在Dos窗口执行了javac hello.java后在执行java hello报错"" 发现路径文件夹内并未生成class文件 检查了环 ...

  4. 《Effective C++》实现 章节

    Item26:尽可能延后变量定义式的出现时间 Item27:尽量少做转型动作 关于这一点,专门开了一个新的总结: http://blog.csdn.net/m0_37316917/article/de ...

  5. 聚合查询、分组查询、ORM中如何给表再次添加新的字段、F与Q查询、ORM查询优化、ORM事务操作、ORM常用字段类型、ORM常用字段参数、Ajax、数据编码格式(Content-Type)、ajax携带文件数据

    今日内容 聚合查询 在ORM中支持单独使用聚合函数,需要使用aggregate方法. 聚合函数:Max最大.Min最小.Sum总和.Avg平均.count统计 from django.db.model ...

  6. 关于 Dev-C++ 中缺少 iconv.h 的问题

    前言 在 C++ 中有个扩展库 ext,里面有一些黑科技(hash, splay, binomial_heap 等等), 在 Windows 环境中,我们运行 Dev-C++ 并在头文件写 #incl ...

  7. Avalonia 实现动态托盘

    先下载一个gif图片,这里提供一个gif图片示例 在线GIF图片帧拆分工具 - UU在线工具 (uutool.cn) 使用这个网站将gif切成单张图片 创建一个Avalonia MVVM的项目,将图片 ...

  8. VS保存后Unity不刷新

    目录 问题:Visual Studio写完代码保存好,Unity不会重新编译 三种解决方案 1.先选为默认.重启Unity.更改为想要的代码编写软件. 2.查看Auto Refresh是否开启 3. ...

  9. 第三方模块:requests模块和openpyxl模块

    1.第三方模块的下载应由 第三方模块:别人写的模块 一般情况下功能都特别强大 我们如果想使用第三方模块 第一次必须先下载后面才可以反复使用(等同于内置模块) 下载第三方模块的方式 1.pip工具 注意 ...

  10. 力扣---45. 跳跃游戏 II

    给定一个长度为 n 的 0 索引整数数组 nums.初始位置为 nums[0].每个元素 nums[i] 表示从索引 i 向前跳转的最大长度.换句话说,如果你在 nums[i] 处,你可以跳转到任意 ...