全部產品
Search
文件中心

:安裝AIACC-Training

更新時間:Jul 01, 2024

AIACC-Training支援基於主流人工智慧(包括PyTorch、TensorFlow、MXNet、Caffe等)搭建的模型進行分布式訓練。在介面層面上,目前AIACC-Training相容了PyTorch DDP以及Horovod的API,對於原生使用上述分布式訓練方法的訓練代碼,可以做到無感的效能加速。本文為您介紹安裝AIACC-Training 1.5.0的多種方式。

前提條件

已建立阿里雲GPU執行個體,且GPU執行個體需滿足以下要求:

  • 作業系統為Alibaba Cloud Linux、CentOS 7.x或Ubuntu 16.04以上版本。

  • 已安裝NVIDIA Driver和CUDA 10.0或以上版本。

背景資訊

本文以安裝AIACC-Training 1.5.0版本為例,您可以根據自身業務情境選擇以下任一方式安裝AIACC-Training。

情境說明

安裝方式

如果已經布置了深度學習的AI訓練環境,則您可以通過自動或手動方式安裝AIACC-Training。

方式一:在已有的AI軟體環境中安裝AIACC-Training

如果需要使用Conda環境,則您可以通過一鍵建立包含AIACC-Training的Conda環境的方式來安裝AIACC-Training。

方式二:安裝包含了AIACC-Training的Conda環境

如果需要使用Docker環境,則您可以通過下載已配備了AIACC-Training的Docker鏡像的方式安裝AIACC-Training。

方式三:安裝配有AIACC-Training的Docker鏡像

說明

在ECS管理主控台建立GPU執行個體時,如果控制台頁面存在AIACC訓練加速選項,且您已選中該選項,則GPU執行個體建立完成後,會同步自動安裝AIACC-Training 1.3.3版本。推薦您選用上述列表中的三種安裝方式之一來安裝AIACC-Training 1.5.0版本。

支援的架構列表

AIACC-Training提供了對應不同深度學習架構版本的軟體包,目前支援的架構版本如下:

CUDA版本

架構類型

架構版本

10.0

PyTorch

1.2.0、1.3.0

TensorFlow

1.14.0、1.15.0、2.0.0

MXNet

1.4.1、1.5.0、1.7.0

10.1

PyTorch

1.6.0、1.5.1、1.4.0

TensorFlow

2.1.0、2.2.0、2.3.0

MXNet

1.4.1、1.5.0、1.6.0、1.7.0、1.9.0

10.2

PyTorch

1.5.1、1.6.0、1.8.0、1.8.2、1.9.0、1.10.0

MXNet

1.9.0

11.0

PyTorch

1.7.0、1.7.1

TensorFlow

2.4.0

MXNet

1.9.0

說明
  • 目前TensorFlow以及MXNet僅支援Python 3.6版本。

  • PyTorch支援Python 3.6~Python 3.9版本,具體與PyTorch官網提供的版本支援一致。更多版本支援資訊,請參見PyTorch官網

  • 如果您使用的架構版本不在上表支援範圍內,請提交工單擷取支援。

方式一:在已有的AI軟體環境中安裝AIACC-Training

如果您已經布置了深度學習的AI訓練環境,則可以通過自動或手動方式安裝AIACC-Training。安裝前您的環境需滿足以下條件:

  • 已安裝Python 3以及對應的pip工具。

  • 已安裝深度學習架構PyTorch、TensorFlow或MXNet。

重要

重新安裝了深度學習架構之後,也需要再次安裝AIACC-Training。

(推薦)自動安裝方式

AIACC-Training提供了對應架構版本的Python軟體包,您可以執行以下命令,通過一鍵指令碼自動安裝。

wget https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/install_AIACC-Training.sh && bash install_AIACC-Training.sh
說明

指令碼預設使用python3作為Python的命令,如果您需要使用其他Python命令,可在指令碼的最後添加。例如使用python作為Python的命令,請執行命令wget https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/install_AIACC-Training.sh && bash install_AIACC-Training.sh python進行一鍵安裝。

手動安裝方式

您可以執行以下命令,使用pip手動安裝最新的AIACC-Training軟體包。

  • 如果您使用的是PyTorch,請使用以下命令安裝AIACC-Training。

    pip install --force-reinstall https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/cuda${cuda_version}/perseus_torch-1.5.0%2B${framework_version}-cp${python_version}-cp${python_version}m-linux_x86_64.whl --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple/

    部分參數說明如下:

    • ${cuda_version}為CUDA的版本,需要去除版本號碼中的半形句號(.),例如CUDA 11.0對應cuda_version=110。

    • ${framework_version}為架構版本號碼,例如PyTorch 1.7.1對應framework_version=1.7.1。

    • ${python_version}為Python的版本號碼,需要去除版本號碼中的半形句號(.),例如Python 3.6對應python_version=36。

    對於Python 3.8或以上版本的whl包,請使用如下的下載地址模板:

    https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/cuda${cuda_version}/perseus_${framework}-1.5.0%2B${framework_version}-cp${python_version}-cp${python_version}-linux_x86_64.whl

    以PyTorch 1.7.1、CUDA 11.0、Python 3.6版本為例,安裝命令如下:

    cuda_version=110         # 注意:此處不帶“.”號
    framework=torch
    framework_version=1.7.1
    python_version=36
    pip install --force-reinstall https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/cuda${cuda_version}/perseus_${framework}-1.5.0%2B${framework_version}-cp${python_version}-cp${python_version}m-linux_x86_64.whl --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple/
  • 如果您使用TensorFlow或MXNet,請使用以下命令安裝AIACC-Training。

    pip install --force-reinstall https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/cuda${cuda_version}/perseus_${framework}-1.5.0%2B${framework_version}-py2.py3-none-manylinux1_x86_64.whl --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple/

    以TensorFlow 1.15.0、CUDA 10.0、Python 3.6版本為例,安裝命令如下:

    cuda_version=100         # 注意:此處不帶“.”號
    framework=tensorflow
    framework_version=1.15.0
    pip install --force-reinstall https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/cuda${cuda_version}/perseus_${framework}-1.5.0%2B${framework_version}-py2.py3-none-manylinux1_x86_64.whl --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple/

方式二:安裝包含了AIACC-Training的Conda環境

Conda是一款開源跨平台的軟體包及環境管理系統。您可以一鍵建立包含AIACC-Training的Conda環境,該環境已安裝CUDA Toolkit、Python 3、深度學習架構以及最新的AIACC-Training軟體等,方便您快速搭建和管理不同的深度學習架構和版本,並通過AIACC-Training顯著提升訓練效能。

  1. 前往Conda官網,下載並安裝最新版本的Miniconda。

  2. 根據需要的架構版本和環境資訊,執行如下命令,一鍵建立相應的Conda環境。

    conda env create -f https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/conda/latest/${framework}_${framework_version}_cu${cuda_version}_py${python_version}.yaml

    以PyTorch 1.7.1、CUDA 11.0、Python 3.6為例,一鍵建立Conda環境的命令如下:

    cuda_version=11.0  
    framework=torch    
    framework_version=1.7.1
    python_version=36
    conda env create -f https://ali-perseus-release.oss-cn-huhehaote.aliyuncs.com/conda/latest/${framework}_${framework_version}_cu${cuda_version}_py${python_version}.yaml

    部分參數說明如下:

    • ${cuda_version}:需為帶半形句號(.)的CUDA版本號碼,此版本必須小於或等於GPU已安裝的CUDA版本。

    • ${framework}:為深度學習架構類型,tensorflow/mxnet/torch分別對應TensorFlow/MXNet/PyTorch架構。

    • ${framework_version}為架構版本號碼,例如PyTorch 1.7.1對應framework_version=1.7.1。

    • ${python_version}為Python的版本號碼,需要去除版本號碼中的半形句號(.),例如Python 3.6對應python_version=36。

    重要

    若提示找不到該Conda環境的URL,則表示暫不支援該架構版本。更多資訊,請參見支援的架構列表

方式三:安裝配有AIACC-Training的Docker鏡像

您可以下載已安裝了AIACC-Training的Docker鏡像,該鏡像內已安裝CUDA、Python 3、深度學習架構和最新的AIACC-Training軟體等,能夠協助您快速部署深度學習環境,管理不同的CUDA環境,並通過AIACC-Training顯著提升訓練效能。

安裝前您的環境需滿足以下條件:

根據需要的架構版本和環境資訊,執行以下命令,下載對應的Docker鏡像。

docker pull registry.cn-beijing.aliyuncs.com/cto_office/perseus-training:${os_type}-cu${cuda_version}-${framework}${framework_version}-py${python_version}-latest

部分參數說明如下:

簡稱

說明

樣本值

${os_type}

Docker鏡像的作業系統類型。

說明

Docker內的作業系統類型與GPU執行個體的作業系統類型無關。

centos7

${cuda_version}

CUDA的版本號碼。

說明

版本號碼需帶半形句號(.),此版本可小於或等於GPU已安裝的CUDA版本。

11.0

${framework}

深度學習架構類型的縮寫。tf/mx/pt分別對應TensorFlow/MXNet/PyTorch架構。

tf

${framework_version}

深度學習架構對應的版本號碼,格式為xx.xx.xx。

2.4.0

${python_version}

Python版本號碼。

說明

版本號碼不帶半形句號(.),例如36/37/38分別對應Python 3.6/Python 3.7/Python 3.8版本。

36

以CentOS 7、CUDA 11.0、TensorFlow 2.4.0的鏡像為例,一鍵安裝命令如下:

os_type=centos7          
cuda_version=11.0        
framework=tf             
framework_version=2.4.0
python_version=36        
docker pull registry.cn-beijing.aliyuncs.com/cto_office/perseus-training:${os_type}-cu${cuda_version}-${framework}${framework_version}-py${python_version}-latest

關於如何使用Docker進行分布式訓練,具體操作,請參見Horovod in Docker

說明
  • 如果提示找不到該Docker鏡像,則表示暫不支援該架構版本。更多資訊,請參見支援的架構列表

  • 如果使用容器進行分布式訓練,執行docker run命令啟動需要增大shm的分配,參數為--shm-size=1g --ulimit memlock=-1