ubuntu cuda学习记录

本文详细介绍了在Ubuntu22.04系统上配置NVIDIAGeForceRTX2060显卡的CUDA环境,包括驱动安装、NVIDIA驱动的卸载与禁用nouveau、安装CUDAToolkit和CUDNN的过程,以及验证安装的步骤。此外,还提供了处理双系统启动顺序和Windows时间同步问题的方法。
摘要由CSDN通过智能技术生成

linux cuda编程(学习记录)


1.环境配置

1.1系统环境

系统显卡
ubuntu22.04NVIDIA GeForce RTX 2060

1.2安装 NIVIDIA驱动程序(包括Dirver CUDA)

1.更新软件列表、安装必要软件、依赖

sudo apt-get update   #更新软件列表
 
sudo apt-get install g++
 
sudo apt-get install gcc
 
sudo apt-get install make

2.查看GPU型号

lspci | grep -i nvidia

3.官网下载对应驱动
官方驱动下载地址
4.卸载原有驱动

sudo apt-get remove --purge nvidia*   # 或者nvidia-*

5.禁用nouveau(nouveau是通用的驱动程序)

sudo gedit /etc/modprobe.d/blacklist.conf 或者(blacklist-nouveau.conf)

在打开的blacklist.conf末尾添加如下,保存文本关闭

blacklist nouveau
 
options nouveau modeset=0

重启后在终端输入如下,没有任何输出表示屏蔽成功

lsmod | grep nouveau

6.停止当前显示器

sudo telinit 3

7.禁用gdm3显示管理器

sudo service gdm3 stop

8.cd进入存放驱动的目录

sudo chmod 777 [驱动名称] #为驱动赋予可执行权限
sudo ./[驱动名称] #安装

安装中的问题:

The distribution-provided pre-install script failed! Are you sure you want to continue? 
[continue installation]
Nvidia's 32-bit compatibility libraries? 
[NO]
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 
[Yes]

9.安装结束

sudo service gdm3 start

10.使用nvidia-smi命令查看安装版本

1.3安装CUDAToolkit

-CUDAToolkit官网下载
在这里插入图片描述

1.利用wget进行下载
2.安装依赖

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

3.执行安装

sudo sh [安装包]

安装过程中输入accept 按空格将驱动取消勾选后安装
安装完成后添加环境变量

vim ~/.bashrc

i键在文件末尾加入(将12.1换成安装版本)

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

Esc后输入:wq退出
更新环境变量(source命令是使该配置文件立刻生效,而无需重启系统)

source ~/.bashrc

执行nvcc -V命令查看刚刚安装的CUDA版本

1.4 安装CUDNN

CUDNN官网下载
在这里插入图片描述

下载 Local Installer for Linux x86_64 (Tar) 或 Local Installer for Ubuntu22.04 x86_64 (Deb)
官方安装说明
对于 Ubuntu 用户,要安装 zlib 包,请运行:

sudo apt-get install zlib1g
1.4.1 Tar 文件安装

在发出以下命令之前,您必须替换 X.Yv8.x.x.x包含您的特定 CUDA 和 cuDNN 版本以及软件包日期。

  1. 导航到您的 <cudnnpath>包含 cuDNN tar 文件的目录。
  2. 解压缩 cuDNN 包。
    tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz
    
  3. 将以下文件复制到 CUDA 工具包目录中。
    sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include 
    sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64 
    sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
    
1.4.2 Debian 本地安装

下载Debian本地存储库安装包。 在发出以下命令之前,您必须替换 X.Y8.x.x.x使用您的特定 CUDA 和 cuDNN 版本。

  1. 导航到您的 downloads包含 cuDNN Debian 本地安装程序文件的目录。
  2. 启用本地存储库
    sudo dpkg -i cudnn-local-repo-${distro}-8.x.x.x_1.0-1_amd64.deb
    
  3. 导入 CUDA GPG 密钥
    sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/
    
  4. 刷新存储库元数据
    sudo apt-get update
    
  5. 安装运行时库
    sudo apt-get install libcudnn8=8.x.x.x-1+cudaX.Y
    
  6. 安装开发者库
    sudo apt-get install libcudnn8-dev=8.x.x.x-1+cudaX.Y
    
  7. 安装代码示例
    sudo apt-get install libcudnn8-samples=8.x.x.x-1+cudaX.Y
    
1.4.3 在 Linux 上验证安装

要验证 cuDNN 是否已安装并正常运行,请编译 mnistCUDNN样本位于 /usr/src/cudnn_samples_v8Debian 文件中的目录。

  1. 将 cuDNN 示例复制到可写路径
    cp -r /usr/src/cudnn_samples_v8/ $HOME
    
  2. 转到可写路径
    cd  $HOME/cudnn_samples_v8/mnistCUDNN
    
  3. 编译mnistCUDNN样本
    make clean && make
    
  4. 执行mnistCUDNN样本
    ./mnistCUDNN
    
    如果 cuDNN 在您的 Linux 系统上正确安装并运行,您将看到类似以下内容的消息:
    Test passed
    

使用cuda编写helloworld

  • 在主目录下创建cuda_program文件夹
  • 在该文件夹下按右键 选择在终端打开
  • 在终端输入sudo vim helloworld.cu
  • i键进入输入模式
  • 输入下面的代码
#include <stdio.h>

__global__ void hello_from_gpu()
{
    printf("Hello World from the GPU!\n");
}

int main(void)
{
    hello_from_gpu<<<1, 1>>>();
    cudaDeviceSynchronize();
    return 0;
}
  • Esc进入一般模式后按:wq保存退出
  • 在终端输入nvcc helloworld.cu -o helloworld
  • 输入./helloworld
  • 完成helloworld输出

ubuntu双系统出现的问题及解决方法

1.启动顺序更改

  1. 在终端输入 sudo gedit /etc/default/grub 在这里插入图片描述

  2. 将第6行GRUB_DEFAULT=00更改为2(我的windows排在开机选择系统的第3位所以改为2)
    注:在vim下按i键进入输入模式、按 Esc键回到一般模式、在一般模式中输入 :wq保存并离开。

  3. 在终端输入sudo update-grub更新grub文件

2. windows系统时间错误

解决办法:
在终端依次输入

sudo apt-get install ntpdate					//在Ubuntu下更新本地时间
sudo ntpdate time.windows.com
sudo hwclock --localtime --systohc			//将本地时间更新到硬件上

之后在windows下选择自动更新时间即可

3.ubuntu系统对于windows下的磁盘分区没有写入权限

解决办法:在windows下关闭快速启动

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值