maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建

请配合官方教程一起看GitHub - MaximIntegratedAI/ai8x-training: Model Training for ADI's MAX78000 and MAX78002 AI Devices文章中的链接最好也点进去都看一下,基本就没啥问题

maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第1张图片

 

根据自己实际使用的环境参考教程搭建

直接安装 WSL2 在非 C 盘
参考Manual installation steps for older versions of WSL | Microsoft Learn

启用 WSL 功能
首先需要启用 WSL 相关的 windows 功能,win+R 输入 appwiz.cpl 回车 -> 启用或关闭 Windows 功能,然后启用下列三个功能:
maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第2张图片

前提条件
win11 是默认支持 WSL2 的,如果是 win10 请参考 检查运行 WSL2 的要求

设置默认安装 WSL2
为了安装 WSL2,需要先安装 WSL2 的内核更新包:适用于 x64 计算机的 WSL2 Linux 内核更新包。
下载这个 .msi 文件之后,双击安装可能会因为权限问题导致安装失败,参考 安装程序出现2502、2503错误解决方法:

打开“命令提示符(管理员)”
在“命令提示符(管理员)”中输入"msiexec /package " +“你将要安装的程序的完整路径及程序名”(注意空格)
然后按回车键,安装程序就会自动启动
此外,你可能还需要使用命令将 WSL2 设置为默认版本:

wsl --set-default-version 2


但 win11 似乎默认就是安装 wsl2 ,我没有手动设置,直接安装的。

安装在非 C 盘
至此,所有的准备工作都OK了,从官网页面可以下载想要安装的 Linux 发行版:下载发行版

以我下载的 Ubuntu 22.04 LTS 为例,把下载后得到的 .appx 文件放到 D 盘目录下,然后修改后缀名为 zip ,即 Ubuntu2204-220620.appx -> Ubuntu2204-220620.zip

然后把它解压,得到一个文件夹,如果文件夹中有 ubuntu****.exe ,那就可以了;但是 22.04 版本解压后应该是有若干个 appx ,这时候根据自己的平台把 Ubuntu_2204.0.10.0_x64.appx 或 Ubuntu_2204.0.10.0_ARM64.appx 修改后缀为 zip,然后再一次解压,这一次就可以得到 .exe 了。

双击 ubuntu2204.exe 开始安装,如果出现错误,那么大概率是没有更新 WSL2 的内核,回到前面一节 “设置默认安装 WSL2” 更新内核。

安装时根据向导进行相应的设置即可。不过注意在设置用户名时只能设置小写字母、数字和下划线(不能使用大写字母),如果不符合要求是无法选择 [done] 的。

maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第3张图片

至此我们已经安装好了 WSL2,在 CMD 中使用命令可以检查我们安装的版本:

wsl -l -v
PS C:\Users\25245> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Running         2

在wsl窗口中更换软件源

手动替换
直接编辑/etc/apt/sources.list文件(需要使用 sudo):
将原文件做备份:

sudo cp /etc/apt/sources.list /etc/apt/sources_copy.list

打开文件:

sudo vim /etc/apt/sources.list

将文件中的内容删除,将镜像源复制到里面。镜像源参考下一章节ubuntu镜像源。

ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

进去后直接按d键删掉全部的,再按i键进入编辑模式,粘贴进去,按esc键退出,再输入英文冒号和wq:wq,再点击回车即可

执行命令

sudo apt-get update
sudo apt-get upgrade

如果报错,请参考

apt命令报证书错误的解决方法------- Certificate verification failed: The certificate is NOT trusted._Chaowanq的博客-CSDN博客

更新好后,在windows CMD中输入

更新到最新版本,我这里是内核版本: 5.10.102.1

wsl --update

关闭wsl2

wsl --shutdown

只需要安装Windows中的NVIDIA显卡驱动就可以,在Windows下已经包含了CUDA的驱动,在wsl2中只需要安装cudatoolkit就可以

官方驱动 | NVIDIA

安装好重启电脑,在WindowsCMD中输入

nvidia-smi

maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第4张图片

 输入wsl,启动ubuntu

接下来,安装远程gui界面,参考

Windows10/11上安装图形用户界面 (GUI)并在 WSL 2 中运行 Ubuntu 22.04_哔哩哔哩_bilibili

!安装GUI命令:
sudo apt update && sudo apt -y upgrade
sudo apt-get purge xrdp
sudo apt install -y xrdp
sudo apt install -y xfce4
sudo apt install -y xfce4-goodies

sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
sudo sed -i 's/3389/3389/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
echo xfce4-session > ~/.xsession

sudo nano /etc/xrdp/startwm.sh
!以下这两行注释掉:
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession

!添加这一行:
# xfce
startxfce4

启动gui界面
sudo /etc/init.d/xrdp start

输入命令ip addr
获取WSL2的IP地址
在windows中,打开远程桌面连接,输入IP地址,即可连接成功

参考

wsl安装xrdp(可视化界面并远程),解决闪退、黑屏_daboluo520的博客-CSDN博客_xrdp闪退

 解决WSL Ubuntu20.4+xfce4 图形界面一段时间后黑屏_惰性固体的博客-CSDN博客_xfce4黑屏

禁止xfce4黑屏
我在ubuntu server上安装了xfce,可是每隔十分钟电脑就会黑屏。安装了xfce自带的电源管理程序。貌似不起作用。后来从网上找到如下方法:

修改/etc/X11/xorg.conf配置文件,如果找不到此文件可自行建立。

增加一个 Section “ServerFlags”,包含的内容如下:

Section "ServerFlags"
  
    Option  "BlankTime"  "0" 
  
    Option  "StandbyTime"  "0"
  
    Option  "SuspendTime"  "0"
  
    Option  "OffTime"  "0"

EndSection
注:你也可以将后面的0设置为你所希望的分钟数。

如果还是不起作用,还可以另外增加Section “Monitor”,反正我没做这一步已经起作用了。内容如下:

Section "Monitor"
    Option "DPMS" "false"
EndSection
配置 WSL2 使用 Windows 网络代理
通过下面脚本可以便捷实现网络代理的设置:./proxyrc.sh set 设置代理,./proxyrc.sh unset 取消代理(以这种方式设置代理只是临时的,重新进入 WSL 需要再一次设置)。

#!/bin/sh
# 获取 windows 主机 IP
hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
wslip=$(hostname -I | awk '{print $1}')
# 代理端口一般是 7890,注意自己去代理软件确认
port="7890"

PROXY_HTTP="http://${hostip}:${port}"

set_proxy(){
    export http_proxy="${PROXY_HTTP}"
    export HTTP_PROXY="${PROXY_HTTP}"

    export https_proxy="${PROXY_HTTP}"
    export HTTPS_proxy="${PROXY_HTTP}"

    export ALL_PROXY="${PROXY_SOCKS5}"
    export all_proxy=${PROXY_SOCKS5}
}

unset_proxy(){
    unset http_proxy
    unset HTTP_PROXY
    unset https_proxy
    unset HTTPS_PROXY
    unset ALL_PROXY
    unset all_proxy
}

test_setting(){
    echo "Host ip:" ${hostip}
    echo "WSL ip:" ${wslip}
    echo "Current proxy:" $https_proxy
}

if [ "$1" = "set" ]
then
    set_proxy
elif [ "$1" = "unset" ]
then
    unset_proxy
elif [ "$1" = "test" ]
then
    test_setting
else
    echo "Unsupported arguments."
fi

安装火狐浏览器

sudo apt-get install firefox

更新git

1、查看git版本

git --version

2、升级Git

sudo apt update # 更新源 
sudo apt install software-properties-common # 安装 PPA 需要的依赖 
sudo add-apt-repository ppa:git-core/ppa # 向 PPA 中添加 git 的软件源 
sudo apt-get update 
sudo apt-get install git

安装NVIDIA Toolkit

CUDA Toolkit 11.8 Downloads | NVIDIA Developer

maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第5张图片

历史版本可以在网址下面找到,不需要安装跟自己windows上的cuda对应的版本,但是CUDA Toolkit 版本应该要与driver版本匹配Release Notes :: CUDA Toolkit Documentation

我这里安装的是11.3版本的

安装pyenv

Ubuntu中安装pyenv和pyenv-virtualenv

使用pyenv安装python

pyenv install 3.8.11

安装失败/下载不了,参考pyenv进行python版本本地安装_轮子学长的博客-CSDN博客

安装pyenv及利用pyevn安装python - 立体风 - 博客园

如果还不行,有可能是网络问题/换个网或者时间再试一下

配置git 环境

如果之前未配置本地 git 环境,请添加以下命令来配置电子邮件和名称。电子邮件必须与 GitHub 匹配(包括大写/小写):

$ git config --global user.email "[email protected]"
$ git config --global user.name "First Last"
接下来进入正题

$ cd 
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-training.git
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-synthesis.git

创建虚拟环境,执行以下操作:

$ cd ai8x-training

如果使用 pyenv,请将本地目录设置为使用 Python 3.8.11。

$ pyenv local 3.8.11

在所有情况下,请验证是否使用了 Python 的 3.8.x 版本:

$ python --version
Python 3.8.11

如果这没有返回版本 3.8.x,请安装并初始化pyenv。

然后继续执行以下操作:

$ python -m venv venv --prompt ai8x-training

如果此命令返回类似于“虚拟环境未成功创建,因为 ensurepip 不可用”的错误消息,请安装并初始化pyenv。

在 macOS 和 Linux(包括 WSL2)上,使用

$ source venv/bin/activate

然后继续

(ai8x-training) $ pip3 install -U pip wheel setuptools

下一步因系统是否使用 CUDA 11.x 而异。

对于 Linux 上的 CUDA 11.x,包括 WSL2:

(ai8x-training) $ pip3 install -r requirements-cu11.txt
//注意这条命令已经包含了Pytorch的环境,默认是1.8.1+cuda111版本的

pip下载不成功的时候试试开/关代理,加上换源

-i https://pypi.tuna.tsinghua.edu.cn/simple/

也可本地安装 参考pip安装本地whl文件(Linux平台)_Mavi2022的博客-CSDN博客_pip安装本地whl

wsl2安装cuda及pytorch_weixin_42187164的博客-CSDN博客_wsl安装pytorch

wsl2安装cuda及pytorch_weixin_42187164的博客-CSDN博客_wsl安装pytorch

ubuntu下安装多版本cuda及版本切换教程_zeeq_的博客-CSDN博客_ubuntu切换cuda版本

接下来就开始训练了

 

已经跑起来!

maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建_第6张图片

参考

win11 安装 WSL2 在非 C 盘及配置(图形界面+代理)_热带鱼啊的博客-CSDN博客_wsl2 图形界面
wsl2和 Windows 如何相互访问文件?_尼888888的博客-CSDN博客_wsl2访问windows的文件

win10/11下wsl2安装gpu版的pytorch(避坑指南)_Challow的博客-CSDN博客_wsl2 安装gpu驱动

win11 使用wsl2安装pytorch 梳理_皮仔--的博客-CSDN博客_wsl安装pytorch


 

你可能感兴趣的:(max78000,ubuntu,linux,机器学习,人工智能)