linux服务器安装cuda11.8
时间: 2025-06-16 22:40:54 浏览: 31
### 安装 CUDA 11.8 的详细指南
#### 准备工作
在开始安装之前,确认服务器的操作系统版本和硬件配置满足 NVIDIA 提供的要求。可以通过以下命令查看 Ubuntu 版本:
```bash
lsb_release -a
```
如果操作系统为 Ubuntu 20.04 或更高版本,则可以继续执行后续步骤。
---
#### 下载 CUDA 工具包
通过 `wget` 命令下载 CUDA 11.8 的运行文件。如果没有网络访问权限或者无法直接使用 `wget`,可以选择手动下载并上传到服务器[^1]。
```bash
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
```
完成下载后赋予可执行权限:
```bash
chmod +x cuda_11.8.0_520.61.05_linux.run
```
---
#### 安装 CUDA 软件包
启动安装程序,并按照提示逐步操作。为了避免潜在的驱动冲突问题,在安装过程中建议禁用显卡驱动的自动安装功能[^3]。
```bash
sudo sh cuda_11.8.0_520.61.05_linux.run --toolkit --silent --override
```
> **注意**: 如果需要自定义选项,去掉 `--silent` 参数以进入交互模式。
---
#### 配置环境变量
为了使系统能够识别 CUDA 库路径,需修改用户的 `.bashrc` 文件或全局 `/etc/profile` 文件[^4]。
编辑 `.bashrc` 文件:
```bash
nano ~/.bashrc
```
追加以下两行内容:
```bash
export PATH="/usr/local/cuda-11.8/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH"
```
保存退出后刷新环境变量:
```bash
source ~/.bashrc
```
验证环境变量设置是否生效:
```bash
nvcc --version
```
正常情况下会显示 CUDA 编译器的相关信息。
---
#### 安装 cuDNN (可选)
cuDNN 是用于加速深度学习框架的重要库。可以从官方页面获取适合 CUDA 11.8 的版本[^4]。
解压已下载的 cuDNN 文件并将头文件和动态链接库复制到指定目录:
```bash
tar -xvJf cudnn-linux-x86_64-*.*.*
cp include/cudnn*.h /usr/local/cuda-11.8/include/
cp lib/libcudnn* /usr/local/cuda-11.8/lib64/
chmod a+r /usr/local/cuda-11.8/include/cudnn*.h
chmod a+r /usr/local/cuda-11.8/lib64/libcudnn*
```
最后验证 cuDNN 是否正确部署:
```bash
cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
```
如果有对应的版本号输出,则说明安装成功。
---
#### 测试 CUDA 和 cuDNN 功能
创建一个简单的测试程序来验证 GPU 加速能力。例如编写如下代码存储为 `test_cuda.cu`:
```cpp
#include <stdio.h>
int main() {
int deviceCount;
cudaGetDeviceCount(&deviceCount);
printf("Number of devices: %d\n", deviceCount);
for(int i=0;i<deviceCount;i++) {
cudaDeviceProp prop;
cudaGetDeviceProperties(&prop, i);
printf("Device Number: %d\n", i);
printf(" Device name: %s\n", prop.name);
printf(" Memory Clock Rate (KHz): %d\n", prop.memoryClockRate);
printf(" Memory Bus Width (bits): %d\n", prop.memoryBusWidth);
printf(" Peak Memory Bandwidth (GB/s): %.1f\n",
2.0 * prop.memoryClockRate * (prop.memoryBusWidth / 8) / 1e6);
}
}
```
编译并运行此程序:
```bash
nvcc test_cuda.cu -o test_cuda
./test_cuda
```
观察输出结果判断设备状态。
---
阅读全文
相关推荐

















