华为atlas 300推理卡工控机环境配置

总结

环境分为社区版和专业版,以下全是基于社区版的进行开发。
就是安装 npu驱动和固件,再准备 cann_toolkit 开发环境,和 nnrt或者nnae运行环境(nnrt仅支持离线推理,nnae 离线和在线都支持)。

ps: 需要注意的是,网页的英文版本和中文版本的最新版的 驱动、固件、cann的版本是不同的(中文版的比较新,英文版本的版本会低,我自己都是在中文网页上下载的最新文件)
开发文档参考:https://www.hiascend.com/zh/document?tag=community-developer

系统安装

ubuntu18.04.1 : http://old-releases.ubuntu.com/releases/18.04.1/ubuntu-18.04.1-desktop-amd64.iso

驱动和固件安装

参考链接: https://support.huawei.com/enterprise/zh/doc/EDOC1100079287/6be5600f

  1. 驱动和固件下载: https://www.hiascend.com/zh/hardware/firmware-drivers?tag=community

2.安装

sudo apt update # 首先要换源 
sudo apt-get install -y gcc g++ make cmake zlib1g zlib1g-dev openssl libsqlite3-dev libssl-dev libffi-dev unzip pciutils net-tools libblas-dev gfortran libblas3 libopenblas-dev # 安装 cann的 依赖
chmod +x A300-3010-npu-driver_21.0.3.1_linux-x86_64.run
sudo ./A300-3010-npu-driver_21.0.3.1_linux-x86_64.run --full  --install-username=ubuntu --install-usergroup=ubuntu # 这里的用户名和用户组都是ubuntu
npu-smi info # 查看npu 信息 验证驱动安装
chmod +x A300-3010-npu-firmware_1.79.22.5.220.run
sudo ./A300-3010-npu-firmware_1.79.22.5.220.run --full
sudo /usr/local/Ascend/driver/tools/upgrade-tool --device_index -1 --component -1 --version # 验证 固件安装是否成功

CANN软件安装

参考链接:https://support.huaweicloud.com/instg-cli-cann504-alpha002/instg-cli-cann504-alpha002.pdf

  1. 安装依赖
wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz # 获取python 包
cd Python-3.7.5
./configure --prefix=/usr/local/python3.7.5 --enable-loadable-sqlite-extensions --enable-shared
make -j4
sudo make install
export LD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_LIBRARY_PATH # 将其添加到 ~/.bashrc 中
# sudo rm /usr/bin/python3 # 因为 系统的python3是python3.6.5,然后删除 这个链接文件 
# sudo ln -s /usr/local/python3.7.5/bin/python3 /usr/bin/python3 # 将系统python3 链接到 python3.7.5  这一步应该放到系统环境弄好了再做,因为可能装环境的时候会装python3.6
sudo ln -s /usr/local/python3.7.5/bin/python3.7 /usr/bin/python3.7 # 为了后面安装 cann的环境 需要做一个python3.7的链接
sudo ln -s /usr/local/python3.7.5/bin/pip3 /usr/bin/pip3 # 链接pip3
sudo mv /usr/bin/lsb_release /usr/bin/lsb_release_back # 移动 系统python3默认的lsb_release
mkdir ~/.pip
vim ~/.pip/pip.conf # 配置pip 源

pip 源配置如下:

[global]
index-url = http://mirrors.aliyun.com/pypi/simple
[install]
trusted-host = mirrors.aliyun.com

安装 python 依赖

sudo -s # 切换到root 用户
pip3 install attrs
pip3 install numpy # 官方文档写着 1.72.2的版本,但是报找不到这个版本的错误,于是就安装默认的版本了
pip3 install decorator
pip3 install sympy
pip3 install cffi
pip3 install pyyaml
pip3 install pathlib2
pip3 install psutil
pip3 install protobuf
pip3 install scipy
pip3 install requests
  1. 安装开发环境
    下载链接: https://www.hiascend.com/zh/software/cann/community
chmod +x Ascend-cann-*
sudo -s # 切换到root 用户
./Ascend-cann-toolkit_5.0.4.alpha002_linux-x86_64.run --install
source /usr/local/Ascend/ascend-toolkit/set_env.sh # 使能环境变量
atc --model=./best.onnx --framework=5 --output=best --input_format=NCHW --soc_version=Ascend310 --input_shape="input:1,3,224,384" # onnx 模型转换 一定要写 input_shape
atc --model=luggage_detect.prototxt --weight=luggage_detect.caffemodel  --framework=0 --output=./output --soc_version=Ascend310 # caffe 模型转换
  1. 安装运行环境
mkdir ~/cann_nnrt # 普通用户安装,官方文档建议非root用户安装
./Ascend-cann-nnrt_5.0.4.alpha002_linux-x86_64.run --install-path=/home/ubuntu/cann_nnrt

ffmpeg和opencv

参考链接: https://gitee.com/ascend/samples/blob/master/cplusplus/environment/opencv_install/README_300_CN.md

mkdir ~/software && cd ~/software
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libtiff5-dev git cmake libswscale-dev pkg-config -y
wget http://www.ffmpeg.org/releases/ffmpeg-4.1.3.tar.gz --no-check-certificate
tar -zxvf ffmpeg-4.1.3.tar.gz
cd ffmpeg-4.1.3 &&  mkdir install
./configure --enable-shared --enable-pic --enable-static --disable-x86asm --prefix=$(pwd)/install  
make -j4
make install
sudo cp install/lib/pkgconfig/* /usr/share/pkgconfig/ # 
cd .. && git clone -b 4.3.0 https://gitee.com/mirrors/opencv.git  #获取opencv 4.3.0
cd opencv && mkdir install  && mkdir build && cd build

应用开发

https://support.huaweicloud.com/aclcppdevg-cann504alpha2infer/aclcppdevg_01_0004.html
sample 参考:https://gitee.com/ascend/sampleshttps://www.hiascend.com/zh/developer/mindx-sdk/case-studies/60172215

posted @ 2022-02-09 17:58  cc96  阅读(1010)  评论(0编辑  收藏  举报