日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

eRDMA:使用高性能網(wǎng)絡(luò)進(jìn)行分布式訓(xùn)練

彈性RDMA(Elastic Remote Direct Memory Access,簡稱eRDMA)是阿里云自研的云上彈性RDMA網(wǎng)絡(luò)。PAI通用計(jì)算資源中的部分GPU機(jī)型已支持eRDMA能力,您只需使用特定鏡像提交基于這些GPU機(jī)型的DLC任務(wù),系統(tǒng)將自動(dòng)在容器內(nèi)掛載eRDMA網(wǎng)卡,從而加速分布式訓(xùn)練過程。

使用限制

  • 僅適用于基于通用計(jì)算資源(預(yù)付費(fèi))提交的訓(xùn)練作業(yè)。

  • 僅適用于2.19及以上的NCCL版本。

  • 目前PAI DLC平臺(tái)支持eRDMA的GPU機(jī)型及對(duì)應(yīng)的eRDMA網(wǎng)卡數(shù)量如下:

    GPU機(jī)型

    eRDMA網(wǎng)卡數(shù)量

    ecs.ebmgn7v.32xlarge

    2

    ecs.ebmgn8v.48xlarge

    2

    ecs.ebmgn8is.32xlarge

    2

    ecs.ebmgn8i.32xlarge

    4

    ecs.gn8is.2xlarge

    1

    ecs.gn8is.4xlarge

    1

    ecs.gn8is-2x.8xlarge

    1

    ecs.gn8is-4x.16xlarge

    1

    ecs.gn8is-4x.16xlarge

    1

平臺(tái)預(yù)置環(huán)境變量

PAI基于通用計(jì)算資源中已經(jīng)支持eRDMA的機(jī)型,自動(dòng)開啟了eRDMA特性,并默認(rèn)設(shè)置了NCCL環(huán)境變量。您可以根據(jù)訓(xùn)練框架、通信框架以及模型特點(diǎn)進(jìn)行必要的調(diào)整。強(qiáng)烈建議您使用平臺(tái)預(yù)置系統(tǒng)內(nèi)的默認(rèn)變量, 可以獲得較優(yōu)性能。

公共環(huán)境變量

環(huán)境變量

PYTHONUNBUFFERED

1

TZ

根據(jù)當(dāng)前作業(yè)所在的Region進(jìn)行設(shè)定,一般是"Asia/Shanghai"。

eRDMA高性能網(wǎng)絡(luò)變量

說明

值“-”表示該環(huán)境變量在該環(huán)境中無效。

環(huán)境變量

NCCL_DEBUG

INFO

NCCL_SOCKET_IF_NAME

eth0

NCCL_IB_TC

-

NCCL_IB_SL

-

NCCL_IB_GID_INDEX

1

NCCL_IB_HCA

erdma

NCCL_IB_TIMEOUT

-

NCCL_IB_QPS_PER_CONNECTION

8

NCCL_MIN_NCHANNELS

16

NCCL_NET_PLUGIN

none

配置自定義鏡像

基于支持eRDMA的通用計(jì)算資源提交訓(xùn)練任務(wù)時(shí),您可以自行構(gòu)建并使用自定義鏡像。注意事項(xiàng)如下:

環(huán)境要求

  • CUDA >= 12.1

  • NCCL >= 2.19

  • Python3

安裝eRDMA庫

根據(jù)鏡像中的Linux發(fā)行版本不同,eRDMA庫安裝也有所不同。以下內(nèi)容以Ubuntu 22.04版本為例,介紹如何安裝eRDMA庫,代碼示例如下:

# 添加PGP簽名。
wget -qO - http://mirrors.cloud.aliyuncs.com/erdma/GPGKEY | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/erdma.gpg

# 添加apt源。
echo "deb [ ] http://mirrors.cloud.aliyuncs.com/erdma/apt/ubuntu jammy/erdma main" | sudo tee /etc/apt/sources.list.d/erdma.list

# 更新&安裝eRDMA用戶態(tài)驅(qū)動(dòng)程序包。
sudo apt update
sudo apt install libibverbs1 ibverbs-providers ibverbs-utils librdmacm1

其他發(fā)行版本的安裝流程,請(qǐng)參考在Docker容器中使用eRDMA

示例Dockerfile

# ${user_docker_image_url} 請(qǐng)?zhí)鎿Q成您自己的已經(jīng)存在的Docker鏡像。
FROM ${user_docker_image_url}

# 如果鏡像中已經(jīng)預(yù)裝了RDMA庫,需要先卸載掉。
RUN rm /etc/apt/sources.list.d/mellanox_mlnx_ofed.list && \
    apt remove -y libibverbs1 ibverbs-providers ibverbs-utils librdmacm1

RUN wget -qO - http://mirrors.aliyun.com/erdma/GPGKEY | gpg --dearmour -o /etc/apt/trusted.gpg.d/erdma.gpg && \
    echo "deb [ ] http://mirrors.aliyun.com/erdma/apt/ubuntu jammy/erdma main" | tee /etc/apt/sources.list.d/erdma.list && \
    apt update && apt install -y libibverbs1 ibverbs-providers ibverbs-utils librdmacm1

使用MPIJob執(zhí)行NCCL Test測試

提交使用MPIJob框架的訓(xùn)練任務(wù),并配置以下關(guān)鍵參數(shù),其他參數(shù)配置說明,請(qǐng)參見快速提交MPIJob訓(xùn)練任務(wù)

參數(shù)

描述

環(huán)境信息

節(jié)點(diǎn)鏡像

鏡像地址頁簽,輸入已準(zhǔn)備的自定義鏡像。

您可以使用PAI-DLC提供的NCCL測試鏡像,該鏡像已預(yù)裝了eRDMA的依賴:dsw-registry.<RegionID>.cr.aliyuncs.com/pai/nccl-tests:12.2.2-cudnn8-devel-ubuntu22.04-nccl2.19.3-1-85f9143

其中<RegionID>支持的地域列表如下:

  • cn-wulanchabu

  • cn-beijing

  • cn-shanghai

  • cn-hangzhou

  • cn-shenzhen

啟動(dòng)命令

# -np 16 -npernode 8 表示使用2個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)8張卡,總共16張卡。
mpirun --allow-run-as-root -np 16 -npernode 8 --bind-to none -mca btl_tcp_if_include eth0 -x UCX_TLS=tcp -x UCX_NET_DEVICES=eth0 -x NCCL_SOCKET_IFNAME=eth0 -x NCCL_IB_DISABLE=0 -x NCCL_IB_GID_INDEX=1 -x NCCL_IB_QPS_PER_CONNECTION=8 -x NCCL_DEBUG=INFO -x LD_LIBRARY_PATH -x NCCL_MIN_NCHANNELS=16 -x NCCL_ALGO=Ring -x PATH /opt/nccl-tests/build/all_reduce_perf -b 32K -e 4G -f 2 -g 1 -t 1 -n 20

資源信息

資源來源

選擇資源配額

資源配額

選擇已創(chuàng)建的通用計(jì)算資源配額,例如資源規(guī)格為ecs.ebmgn8v.48xlarge。如何創(chuàng)建資源配額,請(qǐng)參見通用計(jì)算資源配額

框架

選擇MPIJob

任務(wù)資源

配置以下參數(shù):

  • 節(jié)點(diǎn)數(shù)量:2

  • GPU(卡數(shù)):8

  • CPU(核數(shù)):64

  • 內(nèi)存(GiB):256

  • 共享內(nèi)存(GiB):256

eRDMA網(wǎng)絡(luò)帶寬的NCCL Test示例結(jié)果如下:image