CUDA与GPU驱动程序之间的版本关系非常重要,因为它们需要兼容以确保系统的稳定性和性能。通常情况下,CUDA版本和GPU驱动程序版本之间存在一定的对应关系。以下是一些一般性的指导原则:

  1. CUDA版本和GPU驱动版本的兼容性表:NVIDIA通常会发布一份CUDA Toolkit Release Notes(发布说明),其中包含了CUDA版本和GPU驱动程序版本之间的兼容性列表。在安装CUDA Toolkit之前,建议查看最新的发布说明,以确保选择了与GPU驱动程序兼容的CUDA版本。
  2. 升级时的注意事项:在升级CUDA Toolkit或GPU驱动程序时,务必查看CUDA版本和GPU驱动版本之间的兼容性。如果两者不兼容,可能会导致系统崩溃或性能下降。
  3. 版本匹配建议:通常情况下,建议安装最新版本的CUDA Toolkit,并且与相应版本的GPU驱动程序一起使用。NVIDIA会确保新版本的CUDA Toolkit与最新版本的GPU驱动程序兼容。
  4. 查看系统要求:在安装CUDA Toolkit之前,还应该查看CUDA Toolkit的系统要求和支持的GPU列表。这可以帮助确定是否您的GPU型号与所选的CUDA版本兼容。
  5. 特定环境的考虑:在某些情况下,特定的应用程序或环境可能需要特定版本的CUDA Toolkit和GPU驱动程序。在这种情况下,建议查看应用程序的文档或与相关领域的专家进行交流,以获取最佳的版本建议。

以下为相关链接:

安装

我的是显卡扩展坞,需要先激活雷电设备,如果不是扩展显示可以略过这一步。

# 查看雷电设备
sudo boltctl list
# 状态 status:connected 证明需要激活
###############################################################
 ● Razer Core X
   ├─ type:          peripheral
   ├─ name:          Core X
   ├─ vendor:        Razer
   ├─ uuid:          d0010000-0070-6718-a397-b1845e63c201
   ├─ generation:    Thunderbolt 3
   ├─ status:        connected
   │  ├─ domain:     c8010000-0092-8718-a278-f8d5e6d08918
   │  ├─ rx speed:   40 Gb/s = 2 lanes * 20 Gb/s
   │  ├─ tx speed:   40 Gb/s = 2 lanes * 20 Gb/s
   │  └─ authflags:  none
   ├─ connected:     2023年07月26日 星期三 06时58分41秒
   └─ stored:        no
###############################################################   
# 激活雷电
sudo boltctl authorize <uuid>

查看显卡情况

lspci |grep -i vga

查看N卡驱动情况

sudo lshw -c display

你可以使用以下命令检查现在正在使用的卡

prime-select query

如果要使用Intel图形卡,请运行以下命令

sudo prime-select intel

要切换回Nvidia卡,请运行

sudo prime-select nvidia

不使用

sudo prime-select on-demand

安装驱动

从默认的Ubuntu存储库中列出Nvidia卡的可用驱动程序

sudo ubuntu-drivers devices

安装驱动

sudo apt install nvidia-driver-460
sudo shutdown -r now

安装 CUDA

如果ubuntu 20.04安装cuda 10.1,需要降级gcc:

apt-get install gcc-7 g++-7

使用update-alternatives进行版本切换,输入以下命令:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 50

此时输入sudo update-alternatives --config gcc命令查看gcc的默认版本,可以看到当前默认gcc版本为7,即切换成功。

安装 CUDA

sudo sh cuda_11.2.2_460.32.03_linux.run --no-opengl-libs

–no-opengl-files 只安装驱动文件,不安装OpenGL文件。这个参数最重要!!
–no-x-check 安装驱动时不检查X服务
–no-nouveau-check 安装驱动时不检查nouveau

窗口步骤: continue -> accept -> 一定要把 Driver 去除 -> install

添加环境变量

方案一

nvim .zshrc
# 加入(版本根据自己情况来)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64
export PATH=$PATH:/usr/local/cuda-11.2/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-11.2

方案二 为了省事我以下方案

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

看成功没

nvcc -V

安装 CUDNN

下载解压之后,将cuda/include/cudnn.h文件复制到usr/local/cuda/include文件夹,将cuda/lib64/下所有文件复制到/usr/local/cuda/lib64文件夹中,并添加读取权限:
tar -zxvf 目录

sudo cp ./cuda/include/cudnn.h /usr/local/cuda/include
sudo cp ./cuda/lib/* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*


# 新版本
#进入解压目录
cd cudnn-linux-x86_64-8.4.0.27_cuda11.6-archive
# 复制cudnn头文件
sudo cp ./include/* /usr/local/cuda-11.7/include/  
# 复制cudnn的库
sudo cp ./lib/* /usr/local/cuda-11.7/lib64/ 

#给予权限
sudo chmod a+r /usr/local/cuda-11.7/include/cudnn*.h 
sudo chmod a+r /usr/local/cuda-11.7/lib64/libcudnn*

验证安装是否成功

cd /usr/local/cuda/samples/1_Utilities/deviceQuery

sudo make
./deviceQuery

# 新版地址 不用make直接运行
/usr/local/cuda/extras/demo_suite/deviceQuery

Result = PASS 这就可以了

多个 cuda 切换
在 usr/local 中有多个版本 有个软链 cuda 把这个软链改成想要的版本

sudo rm -rf /usr/local/cuda
sudo ln -s /usr/local/cuda-11.8 /usr/local/cuda

卸载

驱动卸载
先卸载显卡驱动:sudo apt-get remove nvidia-*·
再清除无用的包:sudo apt-get autoremove
再次尝试卸载:sudo nvidia-unustal

CUDA 卸载
cuda10.0及以下的卸载:

cd /usr/local/cuda-xx.x/bin/
sudo ./uninstall_cuda_xx.x.pl
sudo rm -rf /usr/local/cuda-xx.x

cuda10.1及以上的卸载:

cd /usr/local/cuda-xx.x/bin/
sudo ./cuda-uninstaller
sudo rm -rf /usr/local/cuda-xx.x
分类: 自然语言处理LLM大模型 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录