开发者
下载
[object Object]

HCCL Test工具依赖MPI启动多个进程,所以需要先安装MPI软件,再进行HCCL Test工具的编译。

[object Object]
[object Object]
  • 如果通信网卡仅使用IPv4协议:

    [object Object]
    • 针对Ascend 950PR/Ascend 950DT,请安装版本或者版本。[object Object][object Object]
    • 针对Atlas A3 训练系列产品/Atlas A3 推理系列产品,请安装版本或者版本。[object Object][object Object]
    • 针对Atlas A2 训练系列产品/Atlas A2 推理系列产品,请安装版本或者版本。[object Object][object Object]
    • 针对Atlas 训练系列产品,请安装版本或者版本。[object Object][object Object]
    • 针对Atlas 推理系列产品,请安装版本或者版本。[object Object]
  • 如果通信网卡需要使用IPv6协议,请安装版本。

下面分别介绍MPICH与Open MPI的安装配置流程。

[object Object]
  1. 安装MPICH软件包。

    1. 下载并解压MPICH软件包。

      MPICH软件包下载地址:

      获取到mpich-${version}.tar.gz后,执行如下命令解压缩软件包。

      [object Object]

      ${version}为MPICH的版本号。

    2. 进入MPICH解压后路径,并配置编译选项。

      [object Object]
      • --disable-fortran:禁用Fortran语言支持。
      • --prefix:指定的MPI安装路径,用户可自定义。
      • --with-device:指定通信协议,不添加该参数则默认使用OFI协议,配置为ch3:nemesis时,指定使用TCP协议。需注意,MPICH 4.1.3版本下,必须使用TCP协议。
    3. 编译并安装MPICH。

      [object Object]

      以上命令执行完成后MPICH会安装在“/usr/local/mpich”路径下。

      [object Object]
  2. 配置网络节点信息。

    将运行环境的IP地址加入到“/etc/hosts”文件中,格式为“IP地址 主机名”,示例如下:

    [object Object]

    其中“node3”为主机名,可通过执行“ hostname”命令获取。

    注意如果是Euler OS操作系统,需要执行如下命令使更新后的“/etc/hosts”文件生效:

    [object Object]
  3. 配置当前操作节点到集群通信节点的SSH信任关系,以支持集群通信节点远程SSH登录。

    以下仅为操作示例:

    1. 在当前操作节点生成密钥信息(如若环境中存在,可不重复执行):

      [object Object]

      例如密钥信息生成后,存储在“$HOME/.ssh/id_rsa.pub”文件中。

    2. 将操作节点的公钥文件复制到集群通信其他节点,实现SSH密钥登录远程主机。

      示例如下,其中${node_X__ip_address}是需要与操作节点通信的节点IP地址。

      [object Object]
    3. SSH登录上文中已设置好信任关系的节点,确认是否可以直接登录。

[object Object]
  1. 下载并解压Open MPI软件包。

    参见下载4.1.5版本的软件包,例如:openmpi-4.1.5.tar.gz,然后执行如下命令解压缩软件包。

    [object Object]

    解压缩后Open MPI源码存储在openmpi-4.1.5路径下。

  2. 编辑Open MPI源码相关配置文件,修改Open MPI支持的最大Host数量。

    1. 进入Open MPI源码存储路径。

      [object Object]
    2. 修改“orte/mca/routed/radix/routed_radix_component.c”配置文件。

      [object Object]

      修改配置参数“mca_routed_radix_component.radix”的值为“集群中总卡数/单Server中卡数”,例如:

      [object Object]

      保存退出。

    3. 修改“orte/mca/plm/rsh/plm_rsh_component.c”配置文件。

      [object Object]

      修改配置参数“mca_plm_rsh_component.num_concurrent”的值为“集群中总卡数/单Server中卡数”,例如:

      [object Object]

      保存退出。

  3. 配置编译选项。

    [object Object]
    • --disable-fortran:禁用Fortran语言支持。
    • --enable-ipv6:启用IPv6支持。
    • --prefix:配置的Open MPI的安装路径,用户可自定义。
  4. 编译并安装Open MPI。

    [object Object]

    以上命令执行完成后Open MPI会安装在“/usr/local/openmpi”路径下。

    [object Object]
  5. 配置网络节点信息。

    将运行环境的主机信息加入到“/etc/hosts”文件中,格式为“IP地址 主机名”(主机名可通过执行“ hostname”命令获取),示例如下:

    [object Object]

    注意如果是Euler OS操作系统,需要执行如下命令使更新后的“/etc/hosts”文件生效:

    [object Object]
  6. 配置当前操作节点到集群通信节点的SSH信任关系,以支持集群通信节点远程SSH登录。

    以下仅为操作示例:

    1. 在当前操作节点生成密钥信息(如若环境中存在,可不重复执行):

      [object Object]

      例如密钥信息生成后,存储在“$HOME/.ssh/id_rsa.pub”文件中。

    2. 将操作节点公钥复制到集群通信其他节点,实现SSH密钥登录远程主机。

      • 如果通信网卡使用IPv4地址,公钥复制命令如下:

        [object Object]

        例如:

        [object Object]
      • 如果通信网卡使用IPv6地址,公钥复制命令如下:

        [object Object]

        例如:

        [object Object]
    3. SSH登录到配置信任关系的节点,确认是否可以直接登录。

  7. 配置Open MPI启动参数,此步骤仅在通信网卡使用IPv6协议时进行,若使用IPv4协议,跳过即可。

    [object Object]
[object Object]

安装完MPI软件后,需要进行HCCL Test性能测试工具的编译。

  1. 配置编译依赖环境变量。

    • 安装MPICH的场景:

      [object Object]
    • 安装Open MPI的场景:

      [object Object]

    “INSTALL_DIR”是CANN软件安装后文件存储路径,其中“/usr/local/Ascend/cann”为root用户的默认安装路径,如果使用普通用户安装,或指定路径安装,请自行替换。

    “/usr/local/mpich”以及“/usr/local/openmpi”为MPI安装路径,请根据实际情况替换。

  2. 进入HCCL性能测试工具源码存放路径。

    [object Object]
  3. 编译HCCL性能测试工具。

    • 安装MPICH的场景:

      [object Object]
    • 安装Open MPI的场景:

      [object Object]

    其中“MPI_HOME”为MPI安装路径,“ASCEND_DIR”为CANN软件安装后文件存储路径。

    编译成功后,会在${INSTALL_DIR}/tools/hccl_test/bin目录下生成集合通信性能测试工具的可执行文件,例如:

    all_gather_test、all_reduce_test等,每一个可执行文件对应一个集合通信算子。