IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> ubuntu 20.04 GPU 装darknet(未编译opencv) -> 正文阅读

[系统运维]ubuntu 20.04 GPU 装darknet(未编译opencv)

目的:装cudnn->装ubuntu下的darknet
下载了deb 最上层的ubuntu版本的deb,安装之后还是不识别
下载archive 的版本 基于windows 经验 优先下载的11.4版本的cudnn配11.6的cuda,不好使
xz -d ***.tar.xz 解压得到tar文件
tar -xvf ***.tar 解压出来文件夹
解压出来的11.5cudnn也不支持,上网查找,说可能darknet不支持8以上的cudnn
很迷 因为我的win上的cuda版本是11.6

由此上网查找cuda版本
确实想过安装一个低版本的cuda 使用ananconda来回切换可能还蛮帅的 不过没空 所以在网上找了一个新版本的darknet
https://codechina.csdn.net/mirrors/alexeyab/darknet?utm_source=csdn_github_accelerator
编译通过,暂时不想编译opencv,编译配置如下,

GPU=1
CUDNN=1
CUDNN_HALF=1
OPENCV=0
AVX=0
OPENMP=0
LIBSO=0
ZED_CAMERA=0
ZED_CAMERA_v2_8=0

对所有的cuda路径相关进行修改


ifeq ($(GPU), 1)
COMMON+= -DGPU -I/usr/include/
CFLAGS+= -DGPU
ifeq ($(OS),Darwin) #MAC
LDFLAGS+= -L/usr/lib/cuda/lib64 -lcuda -lcudart -lcublas -lcurand
else
LDFLAGS+= -L/usr/lib/cuda/lib64 -lcuda -lcudart -lcublas -lcurand
endif
endif

ifeq ($(CUDNN), 1)
COMMON+= -DCUDNN
ifeq ($(OS),Darwin) #MAC
CFLAGS+= -DCUDNN -I/usr/include
LDFLAGS+= -L/usr/lib/cuda/lib64 -lcudnn
else
CFLAGS+= -DCUDNN -I/usr/include
LDFLAGS+= -L/usr/lib/cuda/lib64 -lcudnn
endif
endif

编译通过,
提示
error while loading shared libraries: libcudnn.so.8: cannot open shared object file: No such file or directory
这里说一下我的cuda 是sudo apt-get 下载的所以目标目录和很多方式都不大一样 不在usr/local 在下面这个路径

(base) rui@ubuntu-server:~/darknet-master$ whereis cuda
cuda: /usr/lib/cuda /usr/include/cuda.h

这里注意修改路径
export LD_LIBRARY_PATH=“/usr/lib/cuda/lib64”
再次调用编译好的darknet

(base) rui@ubuntu-server:~/darknet-master$ export LD_LIBRARY_PATH="/usr/lib/cuda/lib64"
(base) rui@ubuntu-server:~/darknet-master$ ./darknet
usage: ./darknet <function>

看起来还不错
运行一下测试语句

./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

新的报错出现了

Could not load library libcudnn_ops_infer.so.8. Error: libcublas.so.11: cannot open shared object file: No such file or directory

这里注意,之前的cudnn的拷贝目标地址我参考的如下文章
https://blog.csdn.net/ai_faker/article/details/111687801
执行的语句类似于

sudo cp cuda/include/cudnn*.h /usr/include/
sudo cp cuda/lib64/libcudnn* /usr/lib/cuda/lib64/
sudo chmod a+r /usr/include/cudnn.h
sudo chmod a+r /usr/lib/cuda/lib64/libcudnn*
cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

也就是说我的路径位置在就是上述两个目标位置 先去两个目标位置看看这玩意有没有

(base) rui@ubuntu-server:/usr/lib/cuda/lib64$ ls
libcudnn_adv_infer.so           libcudnn_cnn_infer.so.8.2.4     libcudnn_ops_infer_static.a
libcudnn_adv_infer.so.8         libcudnn_cnn_infer.so.8.3.3     libcudnn_ops_infer_static_v8.a
libcudnn_adv_infer.so.8.2.4     libcudnn_cnn_infer_static.a     libcudnn_ops_train.so
libcudnn_adv_infer.so.8.3.3     libcudnn_cnn_infer_static_v8.a  libcudnn_ops_train.so.8
libcudnn_adv_infer_static.a     libcudnn_cnn_train.so           libcudnn_ops_train.so.8.2.4
libcudnn_adv_infer_static_v8.a  libcudnn_cnn_train.so.8         libcudnn_ops_train.so.8.3.3
libcudnn_adv_train.so           libcudnn_cnn_train.so.8.2.4     libcudnn_ops_train_static.a
libcudnn_adv_train.so.8         libcudnn_cnn_train.so.8.3.3     libcudnn_ops_train_static_v8.a
libcudnn_adv_train.so.8.2.4     libcudnn_cnn_train_static.a     libcudnn.so
libcudnn_adv_train.so.8.3.3     libcudnn_cnn_train_static_v8.a  libcudnn.so.8
libcudnn_adv_train_static.a     libcudnn_ops_infer.so           libcudnn.so.8.2.4
libcudnn_adv_train_static_v8.a  libcudnn_ops_infer.so.8         libcudnn.so.8.3.3
libcudnn_cnn_infer.so           libcudnn_ops_infer.so.8.2.4     libcudnn_static.a
libcudnn_cnn_infer.so.8         libcudnn_ops_infer.so.8.3.3     libcudnn_static_v8.a

显然,有的,首先,排除我没有拷贝过来,那么问题就在于没有缺个软连接
把包含路径写入ld时候会报错

(base) rui@ubuntu-server:/etc/ld.so.conf.d$ sudo ldconfig
/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_ops_infer.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_adv_infer.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_ops_train.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_cnn_infer.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_adv_train.so.8 不是符号链接

/sbin/ldconfig.real: /usr/lib/cuda/lib64/libcudnn_cnn_train.so.8 不是符号链接

执行了一坨创建软连接的语句


sudo ln -sf /usr/lib/cuda/lib64/libcudnn_ops_infer.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_ops_infer.so.8
sudo ln -sf /usr/lib/cuda/lib64/libcudnn_adv_infer.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_adv_infer.so.8
sudo ln -sf /usr/lib/cuda/lib64/libcudnn_ops_train.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_ops_train.so.8
 sudo ln -sf /usr/lib/cuda/lib64/libcudnn_cnn_train.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_cnn_train.so.8
 sudo ln -sf /usr/lib/cuda/lib64/libcudnn_adv_train.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_adv_train.so.8
sudo ln -sf /usr/lib/cuda/lib64/libcudnn_cnn_infer.so.8.2.4 /usr/lib/cuda/lib64/libcudnn_cnn_infer.so.8
sudo ldconfig

没有用
根据调查 大概率是cuda版本不对
然后执行了下面这条语句
conda install cudatoolkit==11.1.1
下载了之后还是找不到,反向推理不是没下是路径不对,因为默认打开的anaconda环境,而且用conda下载的 ,所以大概率在conda下,而conda 下的环境我没有加到过LD路径
把路径加到/etc/ld.so.conf.d下的随便那个文件里
/home/rui/anaconda3/lib
然后
sudo ldconfig
然后回到darknet 路径下面
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

bicycle: 99%
dog: 100%
truck: 93%
明天拿随便什么数据集测试一下训练语句,成了的话就先这样

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-28 12:14:41  更:2022-04-28 12:15:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 19:50:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码