本文主要是介绍海思平台环境搭建并测试AI例程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
先粘链接,本次测试所用的例程samples: CANN Samples - Gitee.com
接下来记录环境搭建步骤
-
开发环境配置
首先需要Ubuntu18.04版本,可以是虚拟机或实体机
然后需要安装一些工具,汇总一下是gcc g++ cmake make unzip build-essential zlib1g zlib1g-dev libbz2-dev libsqlite3-dev libssl-dev libxslt1-dev libffi-dev openssl
然后需要安装python3.9.2,使用下面指令下载源码包,然后进行编译和安装
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgztar -zxvf Python-3.9.2.tgz
cd Python-3.9.2
./configure --prefix=/usr/local/python3.9.2 --with-ssl-default-suites=openssl --enable-shared CFLAGS=-fPIC
make
sudo make install
根据安装时配置的安装路径,设置环境变量
export LD_LIBRARY_PATH=/usr/local/python3.9.2/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/python3.9.2/bin:$PATH
接下来需要安装一下CANN的相关依赖
pip3 install –upgrade pip//先升级pippip3 install protobuf==3.13.0 –user
pip3 install psutil==5.7.0 –user
pip3 install numpy==1.13.3 –user
pip3 install scipy==1.4.1 –user
pip3 install decorator==4.4.0 –user
pip3 install sympy==1.5.1 –user
pip3 install cffi==1.12.3 –user
pip3 install pyyaml –user
pip3 install pathlib2 –user
接下来开始安装CANN,软件包获取链接https://download.csdn.net/download/u011436603/89373712,下载后解压并安装
tar -zxvf NNN_PC.tgz
cd NNN_PCchmod +x tooltkit.run./toolkit.run --check
./toolkit.run --install
要使用CANN软件包时,执行命令生效环境变量
source ${INSTALL_DIR}/bin/setenv.bash
然后是交叉编译工具安装,链接https://download.csdn.net/download/u011436603/89373725,下载后解压安装
tar -zxvf aarch64-mix210-linux.tgz
cd aarch64-mix210-linux./aarch64-mix210-linux.install
好了,工具都安装好了,接下来开始测试例程
从git上拉取源码samples: CANN Samples - Gitee.com,进入resnet50_async_imagenet_classification样例目录下,新建/caffe_model目录,然后将ResNet-50网络的模型文件(*.prototxt)和ResNet-50网络的预训练模型文件(*.caffemodel)下载下来放到/caffe_model目录下。
模型文件(*.prototxt)下载
预训练模型文件(*.caffemodel)下载
然后是使用atc工具将原始模型转为适配SoC的离线模型(*.om文件),生成的(*.om文件)处于/model目录下。
atc --model=caffe_model/resnet50.prototxt --weight=caffe_model/resnet50.caffemodel --framework=0 --output=model/resnet50 --soc_version=OPTG --input_format=NCHW --input_fp16_nodes=data --output_type=FP32 --out_nodes=prob:0 --enable_single_stream=true
最后我们来编译例程源码
需要先设置下环境变量
export DDK_PATH=${INSTALL_DIR}
export NPU_HOST_LIB=${INSTALL_DIR}/aarch64-linux/devlib
再创建一个目录,用于存放cmake编译文件,然后先执行cmake指令生成makefile,然后使用make编译,最后生成可执行文件main在/out目录下。
mkdir -p build/intermediates/soccd build/intermediates/soc
cmake ../../../src -DCMAKE_CXX_COMPILER=aarch64-mix210-linux-g++ -DCMAKE_SKIP_RPATH=TRUEmake
然后我们准备下测试数据,这个例程是图片分类,我们需要下载两张图片放到/data下,然后将其转换为bin文件以供后续测试。
图片1 图片2
然后执行/script下的脚本进行转换
cd data
python3 ../script/transferPic.py
如果执行脚本报错“ModuleNotFoundError: No module named 'PIL'”,则表示缺少Pillow库,执行下面的指令安装Pillow后再去转换。
pip3 install Pillow --user
至此开发环境配置全部结束。
-
板端环境配置
将例程文件夹整体拷贝到板子上,例如“/root/acl_resnet50“
将需要用到的库拷到板子上,例如“root/demolib”
设置环境变量
export LD_LIBRARY_PATH=/root/demolib
export ASCEND_AACPU_KERNEL_PATH=/root/demolib
然后进入main所在目录,执行查看效果
chmod +x main
./main
执行成功后,终端会输出结果信息
这篇关于海思平台环境搭建并测试AI例程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!