安装前准备
介绍安装前的准备动作,包括准备用户、检查环境、安装依赖、上传软件包等。
用户准备
支持任意用户(root或者非root)安装AMCT,本章节以非root用户为例进行操作。
- 若使用root用户安装,则不需要操作该章节,不需要对root用户做任何设置。
- 若使用已存在的非root用户安装,须保证该用户对$HOME目录具有读写以及可执行权限。
- 若使用新的非root用户安装,请参考如下步骤进行创建,如下操作请在root用户下执行。本手册以该种场景为例执行AMCT的安装。- 执行以下命令创建AMCT安装用户并设置该用户的$HOME目录。useradd -d /home/username -m username 
- 执行以下命令设置密码。passwd username  username为安装AMCT的用户名,该用户的umask值不能小于0027: username为安装AMCT的用户名,该用户的umask值不能小于0027:- 若要查看umask的值,则执行命令:umask
- 若要修改umask的值,则执行命令:umask 新的取值
 
 
- 执行以下命令创建AMCT安装用户并设置该用户的$HOME目录。
系统要求和环境检查
本章节以Ubuntu 20.04为例,详述安装前准备,版本配套信息如下:
| 类别 | 版本限制 | 获取方式 | 备注 | 
|---|---|---|---|
| 操作系统及版本 | Ubuntu 20.04 x86_64 | 请从Ubuntu官网下载对应版本软件进行安装,安装完成后查询命令为: cat /etc/*release && uname -m | 支持基于CPU,GPU的量化。 | 
| 操作系统及版本 | Ubuntu 20.04 aarch64 | 请从Ubuntu官网下载对应版本软件进行安装,安装完成后查询命令为: cat /etc/*release && uname -m | 支持基于CPU,GPU的量化。 | 
| Caffe环境 | caffe-master分支 当前仅支持commit id为9b891540183ddc834a02b2bd81b31afae71b2153的版本 | 请参考Caffe官方指导准备Caffe环境:https://github.com/BVLC/caffe/tree/master。 推荐使用源码方式安装Caffe环境,如果使用命令行方式安装,出现类似"/usr/bin/python3.7: can't open file '/usr/lib/python3.7/py_compile.py': [Error 2] No such file or directory"信息时,请参见使用命令行方式安装Caffe环境失败解决。 | - | 
| CUDA toolkit/CUDA driver | 11.3或10.0 | 请用户自行获取相关软件包进行安装,例如可以参见如下链接获取相关toolkit包,该包中包括driver软件包。 | 如果使用GPU模式执行量化功能,则CUDA软件必须安装。  说明:  使用Ubuntu 20.04的情况下,推荐安装11.3版本CUDA软件。Ubuntu 20.04默认gcc版本为gcc9,如果使用10.0版本CUDA软件,因其配套gcc7版本,需要对默认的gcc版本进行降级,具体操作步骤请参见使用Ubuntu 20.04安装caffe环境时,出现cuda和gcc版本不匹配的编译报错。 | 
| Python | Python3.7.x(3.7.5~3.7.11)、Python3.8.x(3.8.0~3.8.11)、Python3.9.x(3.9.0~3.9.2) 推荐使用Python3.9.2 | Ubuntu操作系统请参见安装Python3.9.2(Ubuntu)。 | 
 | 
| numpy | 1.20.0+ | 请参见安装依赖。 | |
| protobuf | 3.13.0+ | 
安装依赖
请使用AMCT的安装用户安装依赖的软件,如果安装用户为非root,请确保该用户拥有sudo权限,请使用su - username命令切换到非root用户执行如下命令。
| 依赖名称 | 版本号 | 安装命令 | 
|---|---|---|
| python | 3.9.2 | Ubuntu操作系统请参见安装Python3.9.2(Ubuntu)。 | 
| numpy | 1.20.0+ | pip3 install numpy==1.20.0 --user | 
| protobuf | 3.13.0+ | pip3 install protobuf==3.13.0 --user | 
上传软件包
以AMCT的安装用户将Ascend-cann-amct_{software version}_linux-{arch}.tar.gz软件包上传到Linux服务器任意目录下,本示例为上传到$HOME/amct/目录。
执行如下命令解压AMCT软件包:
tar -zxvf Ascend-cann-amct-{software version}_linux-{arch}.tar.gz
获得如下内容:
| 一级目录 | 二级目录 | 说明 | 使用场景及注意事项 | 
|---|---|---|---|
| amct_caffe/ | Caffe框架AMCT目录。 | 
 | |
| amct_caffe-{version}-py3-none-linux_{arch}.whl | Caffe框架AMCT安装包。 | ||
| caffe_patch.tar.gz | Caffe源代码增强包。 | ||
| amct_tf/ | TensorFlow框架AMCT目录。 | ||
| amct_tensorflow-{version}-py3-none-linux_{arch}.tar.gz | TensorFlow框架AMCT安装包,通过源码编译方式进行安装。 | 
 | |
| amct_tensorflow_ascend-{version}-py3-none-linux_{arch}.tar.gz | 基于TF_Adapter的AMCT安装包,通过源码编译方式进行安装。 | 
 | |
| amct_pytorch/ | PyTorch框架AMCT目录。 | 
 | |
| amct_pytorch-{version}-py3-none-linux_{arch}.tar.gz | PyTorch框架AMCT源码安装包。 | ||
| amct_onnx/ | ONNX模型AMCT目录。 | 
 | |
| amct_onnx-{version}-py3-none-linux_{arch}.whl | ONNX模型AMCT安装包。 | ||
| amct_onnx_op.tar.gz | AMCT基于ONNX Runtime的自定义算子包。 | ||
| amct_ms/ | MindSpore框架AMCT目录。 | 
 | |
| amct_mindspore-{version}-py3-none-linux_{arch}.whl | MindSpore框架AMCT安装包。 | ||
| third_party/ | Ascend-nca-{software version}-linux.{arch}.run | NCA(Neural Compute Agent)软件包。 | 基于性能的自动量化场景下使用。该版本不支持third_party目录下的相关特性。 | 
其中:{version}表示AMCT具体版本号,{software version}为软件版本号,{arch}表示具体操作系统架构。