華為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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM