Ubuntu安装CANN相关依赖

网友投稿 951 2022-05-30

1 CANN概述

华为推出的Atlas相关系列在人工智能方面有大量的应用,如Atlas 500智能小站是面向边缘应用的产品,具有超强计算性能、体积小、环境适应性强、易于维护和支持云边协同等特点,可以在边缘环境广泛部署,满足在安防、交通、社区、园区、商场、超市等复杂环境区域的应用需求。而为了开发、调试和部署各类新的AI应用,则需要借助一套开发框架CANN(Compute Architecture for Neural Networks,异构计算架构)。华为的AI处理芯片则是昇腾系列处理器,官网为:

https://www.hiascend.com

官网示意图如下所示:

从官网可以知道,昇腾网址上分为软件平台和硬件平台,分别可以下载不同的资源,软件平台下,就可以导航到CANN,CANN分为社区版和商业版,其中的社区版包含新的特征,适用于尝试最新特征的用户,而生产环境则建议使用商业版本,它较为稳定。示意图如下所示:

在此网页上,可以根据需要选择安装相关的软件,如Ascend-cann-toolkit_5.0.3.1_linux-aarch64.run 。根据官方的文档说明:CANN是华为公司针对AI场景推出的异构计算架构,通过提供多层次的编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。CANN软件支持通过ascend-deployer命令行工具、msInstaller界面化工具以及命令行方式安装。CANN分为开发环境和运行环境。

开发环境:主要用于代码开发、编译、调测等开发活动。其中分为以下两种场景:

(场景一)在昇腾AI设备上安装开发环境,同时可以作为运行环境,运行应用程序或进行训练脚本的迁移、开发&调试。

(场景二)在非昇腾AI设备上安装开发环境,仅能用于代码开发、编译等不依赖于昇腾设备的开发活动(纯代码开发,好像不能运行应用)。

运行环境:在昇腾AI设备上运行用户开发的应用程序或进行训练脚本的迁移、开发&调试。

2 Ubuntu 依赖安装

开发框架CANN开发环境支持多种操作系统,如这里的Ubuntu 18.04。首先需要安装好Ubuntu 18.04,在安装过程需要下载相关依赖,因此需要确保Ubuntu环境能够连接网络。请在root用户下执行如下命令检查源是否可用:

apt-get update

国内的速度可能比较慢,因此可以重新指向国内的镜像源,具体操作如下:

#root运行 su root #备份 cp /etc/apt/sources.list /etc/apt/sources.list.bak #编辑 vi /etc/apt/sources.list

插入国内镜像源,示意如下:

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

然后更新,执行如下命令:

Ubuntu安装CANN相关依赖

apt-get update

稍等片刻,更新完毕后,安装一些OS依赖库,具体可执行如下命令:

sudo apt-get install -y gcc g++ make cmake zlib1g zlib1g-dev openssl libsqlite3-dev libssl-dev libffi-dev sudo apt-get install -y unzip pciutils net-tools libblas-dev gfortran libblas3 libopenblas-dev libncursesw5-dev

CANN 还依赖于Python3.7 ,因此首先确认一下本地的Python版本,执行命令python3 --version,如果python版本在3.7.0~ 3.7.11之间则可以跳过Python安装过程,默认情况下,Ubuntu 18.04安装的Python是3.6.9 。因此需要重新安装python3.7.5。在目录/home/jack/mysoft下,执行如下命令:

cd mysoft wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz

稍等片刻后,会在mysoft目录中下载完成此安装包Python-3.7.5.tgz。解压源码包:

tar -zxvf Python-3.7.5.tgz

进入解压后的文件夹,执行配置、编译和安装命令:

cd Python-3.7.5 ./configure --prefix=/usr/local/python3.7.5 --enable-loadable-sqlite-extensions --enable-shared make sudo make install

其中“--prefix”参数用于指定python安装路径,用户根据实际情况进行修改。“--enable-shared”参数用于编译出libpython3.7m.so.1.0动态库。“--enable-loadable-sqlite-extensions”参数用于加载libsqlite3-dev依赖。安装完成后,如果输入python3还是未生效,需要配置环境变量。可以执行如下命令设置python3.7.5环境变量,执行如下命令:

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

具体可以参考官网 https://support.huawei.com/enterprise/zh/doc/EDOC1100219211/d1443c4e  。再次查看版本信息:

python3 --version Python 3.7.5 pip3 --version pip 19.2.3 from /usr/local/python3.7.5/lib/python3.7/site-packages/pip (python 3.7)

关于Python相关的依赖,需要借助pip3进行安装,这里为了提高国内的下载速度,需要配置pip源,执行如下命令:

mkdir ~/.pip cd ~/.pip vi pip.conf

pip.conf配置文件内容如下:

[global] #以华为源为例,请根据实际情况进行替换。 index-url = https://mirrors.huaweicloud.com/repository/pypi/simple trusted-host = mirrors.huaweicloud.com timeout = 120

保存退出wq! 。安装前,建议执行命令进行升级,避免因pip版本过低导致安装失败。

pip3 install --upgrade pip

升级后,安装如下依赖项:

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

如果pip3 install numpy==1.17.2安装失败,可执行pip3 install numpy(在Atlas 500上有Pyhon3环境,但是默认没有pip3环境,需要手动安装)。

3 Ubuntu 环境变量

之前的配置Python环境变量,只能在当前的Shell窗口有效,当开启新的命令窗口,则环境变量失效,示意如下所示:

重新打开新的窗口,则python3还是之前的3.6.9。Ubuntu系统包含2类环境变量:

系统环境变量:对所有系统用户都有效。推荐将系统环境变量保存在/etc/profile和/etc/profile.d中。其中/etc/profile.d文件夹来源于/etc/profile,在该目录下所有的*.sh文件都会被加载。而/etc/bash.bashrc在图形界面环境下启动时,不会加载。

用户环境变量:仅对当前的用户有效。推荐将用户环境变量保存在~/.profile中,因为无论是通过控制台还是图形界面启动程序时,都会自动执行该文件。而~/.bashrc, ~/.bash_profile, ~/.bash_login,当通过Shell启动时被加载;当通过图形界面启动程序时,不会加载。

下面设置永久的环境变量,命令如下:

vi /etc/profile

增加的内容如下:

执行如下命令生效:

source /etc/profile

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

vi /etc/use_private_python.info

内容如下:

python3_install_path=/usr/local/python3.7.5

AI平台 Atlas 200 DK开发者套件 Ubuntu

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【乘风破浪的开发者】华为云云享专家朱广建:身处最好的时代,与开发者共建万物互联的新世界
下一篇:JavaScript事件(五)
相关文章