ubuntu22.04安装cuda11.5+cudnn8.8.0

因为pytorch1.11.0与cuda版本的关系 需要用到cuda11.5

否则报错

bash 复制代码
"addmm_sparse_cuda" not implemented for Half

cuda11.5.0及以前的版本不会出现这个问题

因此重新安装,步骤如下:

安装CUDA-11.5.0
bash 复制代码
wget https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda_11.5.0_495.29.05_linux.run
sudo sh cuda_11.5.0_495.29.05_linux.run
修改路径~/.bashrc
bash 复制代码
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export CUDA_HOME=/usr/local/cuda
安装cuDNN-8.8.0

下载路径:

cuDNN Archive | NVIDIA Developer

bash 复制代码
sudo dpkg -i cudnn-local-repo-ubuntu2204-8.8.0.121_1.0-1_amd64.deb

sudo apt-get update

sudo apt-get install libcudnn8=8.8.0.121-1+cuda11.8

sudo apt-get install libcudnn8-dev=8.8.0.121-1+cuda11.8

sudo apt-get install libcudnn8-samples=8.8.0.121-1+cuda11.8
安装完成后可查看
bash 复制代码
cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

#define CUDNN_MAJOR 8
#define CUDNN_MINOR 8
#define CUDNN_PATCHLEVEL 0
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)

/* cannot use constexpr here since this is a C-only file */

表示输出正常!

正确的计算代码应该是
python 复制代码
import torch
a = torch.randn(3,2).half().cuda()
i = torch.LongTensor([[0, 1, 1],  [2, 0, 2]]) 
v = torch.FloatTensor([3, 4, 5]) 
b = torch.sparse.FloatTensor(i, v, torch.Size([2,3])).half().cuda()
b = b.to_sparse_csr()
c = torch.spmm(b, a)
相关推荐
0思必得07 小时前
[Web自动化] Selenium处理动态网页
前端·爬虫·python·selenium·自动化
水如烟7 小时前
孤能子视角:“组织行为学–组织文化“
人工智能
韩立学长7 小时前
【开题答辩实录分享】以《基于Python的大学超市仓储信息管理系统的设计与实现》为例进行选题答辩实录分享
开发语言·python
大山同学7 小时前
图片补全-Context Encoder
人工智能·机器学习·计算机视觉
qq_192779877 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
薛定谔的猫19828 小时前
十七、用 GPT2 中文对联模型实现经典上联自动对下联:
人工智能·深度学习·gpt2·大模型 训练 调优
u0109272718 小时前
使用Plotly创建交互式图表
jvm·数据库·python
爱学习的阿磊8 小时前
Python GUI开发:Tkinter入门教程
jvm·数据库·python
壮Sir不壮8 小时前
2026年奇点:Clawdbot引爆个人AI代理
人工智能·ai·大模型·claude·clawdbot·moltbot·openclaw
PaperRed ai写作降重助手8 小时前
高性价比 AI 论文写作软件推荐:2026 年预算友好型
人工智能·aigc·论文·写作·ai写作·智能降重