一、推荐基础开发环境配置

软件/硬件

说明

推荐配置/版本

获取方式

硬件

X86_64

Atlas800-3010

/

操作系统

Centos / OpenEuler

CentOS 7.6 / CentOS 8.2 / OpenEuler 20.03

官网

Driver

驱动

Atlas 300-3010

官网

CANN

针对AI场景推出的异构计算架构,通过提供多层次的编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。

CANN 6.0.RC1

官网

MindX

视频分析应用开发套件(SDK),提供极简易用、高性能的API和工具,助力昇腾AI处理器赋能IVA各应用场景。

MindX 3.0.RC3

官网

二、安装昇腾驱动

1、获取驱动

驱动、CANN、MindX SDK需要通过官网获取,以下例子,昇腾设备为:Atlas800-3010,服务器为centos x86_64 7.6版本

Ascend HDK 22.0.RC2.3 目录下获取以下两个文件
A300-3010-npu-driver_5.1.rc2.3_linux-x86_64.run          (驱动)
A300-3010-npu-firmware_5.1.rc2.3.run                     (固件)

CANN 6.0.RC1 目录下获取以下文件
Ascend-cann-toolkit_6.0.RC1_linux-x86_64.run             (开发套件)

MindX 3.0.RC3 目录下获取以下文件
Ascend-mindxsdk-mxvision_3.0.RC3_linux-x86_64.run        (SDK)

2、环境搭建

具体环境搭建,可以参考:
https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/51RC1alpha005/softwareinstall/instg/atlasdeploy_03_0018.html

以root用户登录安装环境。

(1)检查root用户的umask值。

umask

如果umask不等于0022,请执行如下操作配置,在该文件的最后一行添加umask 0022后保存。

vi ~/.bashrc
source ~/.bashrc

(2)创建华为用户组HwHiAiUser 和 用户

groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash

设置密码

passwd HwHiAiUser

(3)推理环境需要的OS依赖

yum install -y gcc gcc-c++ make cmake unzip zlib-devel libffi-devel openssl-devel pciutils net-tools sqlite-devel lapack-devel openblas-devel gcc-gfortran

安装完后检查OS依赖是否都安装上

gcc --version
g++ --version
make --version
cmake --version
rpm -qa |grep unzip
rpm -qa |grep zlib-devel
rpm -qa |grep libffi-devel
rpm -qa |grep openssl-devel
rpm -qa |grep pciutils
rpm -qa |grep net-tools
rpm -qa |grep sqlite-devel
rpm -qa |grep lapack-devel
rpm -qa |grep openblas-devel
rpm -qa |grep gcc-gfortran

(4)如果cmake安装完后不是3.15.2+版本,请手动更新cmake

wget https://cmake.org/files/v3.15/cmake-3.15.2.tar.gz --no-check-certificate

tar -zxvf cmake-3.15.2.tar.gz
cd cmake-3.15.2
./bootstrap --prefix=/usr
make
sudo make install

(5)安装Python3.9.0

否则请根据如下方式安装python3.9.0。

a. 准备Python-3.9.0.tgz包,可以使用wget下载python3.9.0源码包,可以下载到安装环境的任意目录,命令为:
wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz
b. 进入下载后的目录,解压源码包,命令为:
tar -zxvf Python-3.9.0.tgz
c. 进入解压后的文件夹,执行配置、编译和安装命令:
cd Python-3.9.0
./configure --prefix=/usr/local/python3.9.0 --enable-loadable-sqlite-extensions --enable-shared
make
sudo make install

设置python3.9.0环境变量
vi .bashrc内增加以下环境变量

#用于设置python3.9.0库文件路径
export LD_LIBRARY_PATH=/usr/local/python3.9.0/lib:$LD_LIBRARY_PATH
#如果用户环境存在多个python3版本,则指定使用python3.9.0版本
export PATH=/usr/local/python3.9.0/bin:$PATH

为后续安装CANN软件包、运行CANN软件环境变量设置脚本时能够自动配置python3.9.0环境变量,用户需提前创建好文件“use_private_python.info”,操作参考如下:
root用户

vi /etc/use_private_python.info

在文件中添加以下内容:

python3_install_path=/usr/local/python3.9.0

安装完成之后,执行如下命令查看安装版本,如果返回相关版本信息,则说明安装成功。

python3 --version
pip3 --version

(6)Python第三方库安装

推理环境的Python第三方库要求
版本要求:numpy>=1.13.3、protobuf==3.11.3

安装前,建议执行命令pip3 install --upgrade pip进行升级,避免因pip版本过低导致安装失败。

pip3 install attrs
pip3 install numpy
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

pip3.7安装超时,或者太慢的时候,可以使用国内pip源比如:
清华的源

pip3.7 install -i https://pypi.tuna.tsinghua.edu.cn/simple sympy

阿里的源

pip3.7 install -i http://mirrors.aliyun.com/pypi/simple scipy

华为的源

pip3.7 install -i http://mirrors.tools.huawei.com/pypi/simple scipy

(7)安装驱动

./A300-3010-npu-driver_5.1.rc2.3_linux-x86_64.run --full
./A300-3010-npu-firmware_5.1.rc2.3.run --full

(8)安装CANN异构计算平台

./Ascend-cann-toolkit_6.0.RC1_linux-x86_64.run --install

(9)安装完CANN异构计算平台后,需要配置环境变量

.bashrc文件添加以下环境变量

# 安装toolkit包时配置
. /usr/local/Ascend/ascend-toolkit/set_env.sh

用户也可以通过修改~/.bashrc文件方式设置永久环境变量,操作如下:
a) 以运行用户在任意目录下执行vi ~/.bashrc命令,打开.bashrc文件,在文件最后一行后面添加上述内容。
b) 执行:wq!命令保存文件并退出。
c) 执行source ~/.bashrc命令使其立即生效。

(10)安装完成后npu-smi info 显示安装成功

[root@localhost ~]#
[root@localhost ~]# npu-smi info
+---------------------------------------------------------------------------------+
| npu-smi 22.0.2.3              Version: 22.0.2.3                                 |
+---------------+--------------+--------------------------------------------------+
| NPU    Name   | Health       | Power(W)  Temp(C)          Hugepages-Usage(page) |
| Chip   Device | Bus-Id       | AICore(%) Memory-Usage(MB)                       |
+===============+==============+==================================================+
| 1      310    | OK           | 12.8      45               0   / 0               |
| 0      0      | 0000:05:00.0 | 0         2621  / 8192                           |
+===============+==============+==================================================+

三、安装MindX SDK > mxVision

(1)MindX SDK需要通过官网获取。

(2)mxVision说明手册:

https://support.huaweicloud.com/mindxsdk201/index.html

(3)安装MindX SDK

./Ascend-mindxsdk-mxvision_3.0.RC3_linux-x86_64.run --install --install-path=/usr/local/sdk_home

--install-path为指定安装的路径

(4)安装成功后会提示如下信息

Installing collected packages:mindx
Successfully installed mindx-3.0.RC3

(5)安装成功后在对应目录下查看,能看到mxVision

[root@localhost sdk_home]#
[root@localhost sdk_home]# pwd
/usr/local/sdk_home
[root@localhost sdk_home]# ls
mxVision mxVision-3.0.RC3
[root@localhost sdk_home]#
[root@localhost sdk_home]#

(6)MindX SDK使用中需要用到OSD功能,安装后需要执行以下命令,生成om文件

bash /usr/local/sdk_home/mxVision/operators/opencvosd/generate_osd_om.sh

执行成功后,显示如下效果

[root@localhost ~]# bash /usr/local/sdk_home/mxVision/operators/opencvosd/generate_osd_om.sh
ASCEND_HOME is set to /usr/local/Ascend by user
Set ASCEND_VERSION to the default value:ascend-toolkit/latest
ATC start working now,please wait for a moment.
ATC run success, welcome to the next use.

The model has been successfully converted to om,please get it under /usr/local/sdk_home/mxVision/operators/opencvosd.
[root@localhost ~]#

(9)安装完MindX SDK后,需要配置环境变量

.bashrc文件添加以下环境变量

# 安装mxVision时配置
. /usr/local/sdk_home/mxVision/set_env.sh

用户也可以通过修改~/.bashrc文件方式设置永久环境变量,操作如下:

a) 以运行用户在任意目录下执行vi ~/.bashrc命令,打开.bashrc文件,在文件最后一行后面添加上述内容。
b) 执行:wq!命令保存文件并退出。
c) 执行source ~/.bashrc命令使其立即生效。