AI

【转】Windows+Ubuntu从双系统安装到CUDA cuDNN docker 配置K210等多模型训练环境

2022-06-07 09:53:06 gx 131

目录

一、系统盘制作

二、Ubuntu20.04 LTS+Windows双系统安装

三、cuda & cuDNN & Docker

四、Anaconda & Pycharm

五、yolov5 

六、maix_train

准备




  1. U盘或读卡器+SD卡【最好选用USB3.0或高速SD卡(本人用的是读卡器和SD卡)】

  2. 个人PC

    新手不要在学校服务器上尝试!

    新手不要在学校服务器上尝试!

    新手不要在学校服务器上尝试!

一、Ubuntu20.04 LTS 镜像下载 & 启动盘制作

1. Ubuntu 20.04 LTS官方镜像下载地址: https://cn.ubuntu.com/download/desktop

高性能工作站服务器找我们

2. 使用SD Memory Card Formatter格式化U盘或SD卡,使用Etcher烧录系统镜像,具体使用方法可移步上一个教程: Jetson nano从烧录系统到DeepStream+TensorRT+yolov5检测CSI摄像头视频 - 哔哩哔哩 (bilibili.com) 只需将镜像换成下好的Ubuntu镜像即可!

二、Ubuntu20.04 LTS+Windows双系统安装

1.重启电脑,按F12或者其它键进入启动项选择,并选择U盘为启动项

高性能工作站服务器找我们
1.语言建议选成English(绝对路径含中文都是坑)
高性能工作站服务器找我们
2.键盘布局这里选成Chinese
高性能工作站服务器找我们
3.连接到有线或WIFI 
高性能工作站服务器找我们
4.正常安装 勾选安装时更新和安装第三方驱动

下面进入分区步骤,谨慎操作,数据无价!!!

下面进入分区步骤,谨慎操作,数据无价!!!

下面进入分区步骤,谨慎操作,数据无价!!!

2. 第一种情况:重装Ubutnu或者整块空磁盘,可选择清空整块磁盘,高级选项选即可。

高性能工作站服务器找我们

3.下一步选择要安装的磁盘位置,此方法仅适用空磁盘没有其他系统或分区的,如有问题看4,5步

高性能工作站服务器找我们

4.第二种情况Windows或其他系统与Ubuntu共用磁盘,需要提前压缩磁盘,留出连续空闲空间


高性能工作站服务器找我们
这里选其他选项


5.选择要安装的其他,在空闲空间(free space) 依次创建EFI System Partition (ESP)、Ext4 journaling file system、swap area (交换分区,可选)

高性能工作站服务器找我们

EFI分区512MB即可

高性能工作站服务器找我们

Ext4分区选最大,或留出8~16GBswap分区,swap分区大小跟电脑内存(RAM)大小相同即可,不建议将/home目录单独分区。并挂载到系统跟目录 /

高性能工作站服务器找我们

swap分区可选,用作swap分区

高性能工作站服务器找我们

Device for boot loader installation选择为EFI分区,并检查主分区是否挂载至根目录

高性能工作站服务器找我们

6.双系统请勿随便删除其他非空分区主分区逻辑分区,双系统必须在Windows磁盘管理中压缩空间成未分配状态,以防误删。再次检查确认无误后点继续!

高性能工作站服务器找我们

7.时区这里选择上海(Shanghai)

高性能工作站服务器找我们

8. 用户名、主机名、简短容易辨识即可

高性能工作站服务器找我们

9.等待安装结束~~~

高性能工作站服务器找我们

10. 安装完成,提示拔出U盘 按回车重启

高性能工作站服务器找我们

进入启动项,选择刚才安装的Ubuntu,如果需要修改启动顺序,自行在Bios中修改

高性能工作站服务器找我们

这里选择Ubuntu即可,如需进入Windows选第三个

高性能工作站服务器找我们

三、cuda & cuDNN & Docker

cuda cuDNN仅限有NVIDIA独立显卡安装 没有或仅训练k210模型可跳至 

高性能工作站服务器找我们

打开Software & Updates 选择Additional Drivers,可能会出现与我相同的情况,选项为灰色,具体参考Ubuntu社区此帖,https://ubuntu-mate.community/t/no-proprietary-drivers-are-in-use-ubuntu-drivers-list-no-output/23204 此前没有遇到此类问题。

在终端执行sudo ubuntu-drivers autoinstall即可,本以为系统又要重装

然后选择最新的显卡驱动 版本465 cuda11.3 重启即可

高性能工作站服务器找我们

输入nvidia-smi即可查看cuda版本11.3 记住这个版本号,装cuda版本只能小于或等于此版本,建议安装较新的,需要低版本可以通过anaconda中的cudatoolkit解决。anaconda安装配置环境在下面。如果不使用基础环境中的cuda cuDNN可跳过此步骤!

高性能工作站服务器找我们

NVIDIA官网,cuda11.3安装界面。

高性能工作站服务器找我们
Bing国际版搜cuda11.3 第一个
高性能工作站服务器找我们
依次按步骤执行

如遇到下载失败,自行删除失败文件,重新下载

高性能工作站服务器找我们

deb (local)成功率最高,不建议尝试deb (network) 和runfile loacl,安装过程稍慢,请耐心等待,不要Ctrl C终止或关闭终端。

高性能工作站服务器找我们

安装完成之后,加入到环境变量,可用gedit或vim编辑,vim可用sudo apt install vim安装,具体使用方法,参考上一篇帖子,

高性能工作站服务器找我们

注意cuda版本是11.3,保存退出,输入source .bashrc,输入nvcc -V 即可查看cuda版本。

高性能工作站服务器找我们

接下来安装cuDNN,需要注册账号,建议选用deb方式安装。https://developer.nvidia.com/cuda-download-survey

高性能工作站服务器找我们
高性能工作站服务器找我们

依次下载、用sudo dpkg -i *.deb方式安装

高性能工作站服务器找我们

然后安装docker,https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker

没有curlsudo apt install curl,然后按照命令依次按照即可,注意不要执行Note里面关于wsl2的命令

高性能工作站服务器找我们
高性能工作站服务器找我们
高性能工作站服务器找我们
高性能工作站服务器找我们
高性能工作站服务器找我们

安装完成,重启docker服务

高性能工作站服务器找我们

输入sudo docker ps -a 即可查看当前运行的容器

高性能工作站服务器找我们

更多Docker容器 可访问官网https://ngc.nvidia.com/catalog 查看,docker使用非常方便,官方提供各种配好的机器学习框架,计算机视觉等包,拉取即用。

高性能工作站服务器找我们

四、Anaconda & Pycharm

另一种就是anaconda虚拟环境,也能够很方便的管理包,可以使用cudatoolkit而取代基础环境中的cuda cuDNN 从而避免以上繁琐的过程

https://www.anaconda.com/products/individual#Downloads

高性能工作站服务器找我们

下载Linux-64位版本,先chmod a+x ./Anaconda3-2021.05-Linux-x86_64.sh提权,然后./Anaconda3-2021.05-Linux-x86_64.sh

注意!不要使用sudo sh命令,否则会安装到root下。

高性能工作站服务器找我们

第一个选yes

高性能工作站服务器找我们

安装目录默认即可

高性能工作站服务器找我们

第二个也要选yes添加到环境变量,


高性能工作站服务器找我们

重启终端,可以看见用户名前多了(base)代表基础环境,输入anaconda-navigator即可进入anaconda图形界面

高性能工作站服务器找我们
高性能工作站服务器找我们

然后是Pycharm安装,相较于vscode我更推荐用,

https://www.jetbrains.com/pycharm/download/#section=linux

高性能工作站服务器找我们
请不要私信问我Pycharm 32位怎么装,我不会,

将下载好的压缩包,解压至Home目录下

高性能工作站服务器找我们
高性能工作站服务器找我们

进入,bin文件夹,./pycharm.sh 启动

高性能工作站服务器找我们
高性能工作站服务器找我们
高性能工作站服务器找我们
高性能工作站服务器找我们

安装完成之后,sudo apt install git 可在Pycharm中拉取项目

高性能工作站服务器找我们

五、yolov5 

拉取yolov5项目 仅训练k210模型可跳过次步骤

高性能工作站服务器找我们

这里选择取消 不创建Pycharm的虚拟环境

高性能工作站服务器找我们

在File-Setting-Project-Python Interpreter-Add 中选择Conda Enviroment-New environment Python版本选择项目兼容的,

高性能工作站服务器找我们

pip install -r requiremnets.txt -i https://mirror.baidu.com/pypi/simple

高性能工作站服务器找我们

python detect.py 

高性能工作站服务器找我们

关于DarkNet框架编译,请参考我的上一篇教程,编译之前,需要安装cmake make libopencv-dev等包,可自行sudo apt install xxx安装

六、maix_train

接下来进入maix_train环境配置

项目地址:https://github.com/sipeed/maix_train.git

高性能工作站服务器找我们

Python version 3.8

高性能工作站服务器找我们

创建好之后点 + 号

高性能工作站服务器找我们

搜索tensorflow,有NVIDIA的GPU选择tensorflow-gpu版本,没有选tensorflow即可版本号为2.4.1 

高性能工作站服务器找我们

然后,pip install -r requiremnets.txt -i https://mirror.baidu.com/pypi/simple 安装剩下的包

高性能工作站服务器找我们

训练之前,先按照说明去nncase的GitHub 下载ncc v0.1.0 RC5 Linux 版本,并解压到tools/ncc/ncc_v0.1目录下,注意不要套目录

高性能工作站服务器找我们
高性能工作站服务器找我们

训练之前,先python train.py init 生成配置文件,配置文件中包含epoch 等参数

高性能工作站服务器找我们

这里有分类模型和检测模型可选,我这里选的是检测模型

高性能工作站服务器找我们

训练结束后,会在out目录生成模型和脚本文件

高性能工作站服务器找我们

修改boot.py 倒数第6行,为"/sd/m.kmodel" 复制到sd卡,插入烧好Maixpy固件的k210开发板即可运行!

高性能工作站服务器找我们

写到最后,大部分深度学习项目,均可通过以上方法在Pycharm中用anaconda环境配置,相较于社区版,Pycharm专业版有更多的功能,使用docker容器也是非常方便,直接拉取就能使用。

https://www.bilibili.com/read/cv12141390/

解决方案