centos7使用yum安装cuda或者单独安装cuda-runtime和nvcc

发布时间 2023-08-02 16:37:57作者: 海_纳百川

最近在配置grounded-sam环境,官方提供了镜像,但是镜像我下载看了,有17个g,还不包含项目所需安装包,因为这个官方镜像使用的是conda,所以很多包是用不到的,比较冗余,而且如果传输到内网又很麻烦。

于是我自己配置基础镜像,事实证明,比较耗时。

 

我使用的基础镜像是我为sam配置的,但是里面没有cuda-runtime包,cuda-runtime包大概需要1.6个g。

 

这里说说cuda,驱动,cudnn的关系。具体理解,驱动是底层,小于某个版本的cuda都可以在上面运行。cuda作为一个开发平台,可以理解为一种基于c的开发语言,有自己的基础库。而cudnn是在cuda上进行编写的加速动态库,所以cudnn总是和cuda绑定在一起的。

 

关于单独安装cuda-runtime,主要是使用rpm和repo,一定要记住nvidia的整个地址,很有用:

https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/

 

首先我们要添加nvidia的仓库,分为两种

第一种可以单独添加rpm地址,RPM包包含CUDA Runtime库和其他相关的CUDA软件,

具体方式为:随便拿一个包来举例

sudo yum install epel-release
sudo wget https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-repo-rhel8-11.6.0-1.x86_64.rpm
sudo rpm -i cuda-repo-rhel8-11.6.0-1.x86_64.rpm
sudo yum clean all
sudo yum makecache
这几行代码用于在CentOS系统中添加NVIDIA的yum存储库,并安装CUDA Runtime库(版本11.6.0)。

1. `sudo yum install epel-release`:这条命令用于安装"epel-release"软件包,该软件包包含了额外的RPM软件源,其中包括NVIDIA的CUDA软件源。

2. `sudo wget https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-repo-rhel8-11.6.0-1.x86_64.rpm`:这条命令使用wget工具从NVIDIA官方网站下载CUDA存储库的RPM包。这个RPM包包含CUDA Runtime库和其他相关的CUDA软件。

3. `sudo rpm -i cuda-repo-rhel8-11.6.0-1.x86_64.rpm`:这条命令使用rpm命令安装刚刚下载的CUDA存储库的RPM包。一旦安装完成,系统就会知道从这个源获取CUDA软件。

4. `sudo yum clean all`:这条命令清理了所有的yum软件包缓存,确保后续的操作使用最新的信息。

5. `sudo yum makecache`:这条命令重新生成yum缓存,以便系统可以获取新添加的CUDA存储库的信息。

完成了以上步骤后,您就可以使用`sudo yum install cuda-runtime-11-6`来安装CUDA 11.6版本的只包含CUDA Runtime库而不包含nvcc的版本。

完成以后使用如下命令进行安装

sudo yum install cuda-runtime-11-6

但是这样容易缺少依赖。

 

第二种方法是:

添加了整个仓库地址https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo

wget https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
cp cuda-rhel7.repo /etc/yum.repos.d/
yum clean all
yum makecache
yum install cuda-runtime-11-6

其实这种方法是最简单有效的