源码安装Hyper MPI
前提条件
操作系统 |
依赖包 |
---|---|
|
|
Ubuntu18.04.5(ARM) |
|
编译环境变量检查
GCC编译Hyper MPI软件包
Hyper MPI包含Hyper MPI和HUCX两个软件层,其中Hyper MPI的安装依赖于HUCX,编译时应先编译HUCX。
- HUCX编译
- 使用PuTTY工具,以Hyper MPI安装维护用户,如“hmpi_master”登录作业执行节点。
- 下载HUCX源码包“hucx-v1.2.1.spc001-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/hucx/archive/refs/tags/v1.2.1.spc001-huawei.tar.gz
- 下载XUCG源码包“xucg-v1.2.1-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/xucg/archive/refs/tags/v1.2.1-huawei.tar.gz
- 将上述两个源码包上传至服务器HUCX源码包安装目录,如“/path/to/download/hucx”。
- 执行以下命令,进入HUCX源码包安装路径。
- 执行以下命令,解压上述两个源码包。
tar -zxvf hucx-v1.2.1.spc001-huawei.tar.gz
tar -zxvf xucg-v1.2.1-huawei.tar.gz
- 执行以下命令,将XUCG源码包中的内容复制到HUCX源码包中的“src/ucg”目录下。
cp -r xucg-v1.2.1-huawei/* hucx-v1.2.1.spc001-huawei/src/ucg
- 执行以下命令,进入“autogen.sh”脚本所在目录。
- 执行以下命令,进行源码包安装。
./contrib/configure-opt --prefix=/path/to/install/hucx
make -j32
make -j32 install
make后面-j参数为并行编译参数,表示有多少CPU核数参与编译过程,请根据实际CPU核数进行指定。
- Hyper MPI编译
- 使用PuTTY工具,以Hyper MPI安装维护用户,如“hmpi_master”登录作业执行节点。
- 下载Hyper MPI源码包“hmpi-v1.2.1-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/hmpi/archive/refs/tags/v1.2.1-huawei.tar.gz
- 将源码包上传至服务器Hyper MPI源码包安装目录,如“/path/to/download/hmpi”。
- 执行以下命令,进入源码包安装目录。
- 执行以下命令,解压软件包。
- 执行以下命令,进入“autogen.pl”脚本所在目录。
- 执行以下命令,进行Hyper MPI源码包安装。
./autogen.pl
./configure --prefix=/path/to/install/hmpi --with-platform=contrib/platform/mellanox/optimized --enable-mpi1-compatibility --with-ucx=/path/to/install/hucx
make
make install
- /path/to/install/hmpi:表示Hyper MPI的安装路径。
- /path/to/install/hucx:表示HUCX的安装路径。
毕昇编译Hyper MPI软件包
Hyper MPI包含Hyper MPI和HUCX两个软件层,其中Hyper MPI的安装依赖于HUCX,编译时应先编译HUCX。
- HUCX编译
- 使用PuTTY工具,以Hyper MPI安装维护用户,如“hmpi_master”登录作业执行节点。
- 下载HUCX源码包“hucx-v1.2.1.spc001-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/hucx/archive/refs/tags/v1.2.1.spc001-huawei.tar.gz
- 下载XUCG源码包“xucg-v1.2.1-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/xucg/archive/refs/tags/v1.2.1-huawei.tar.gz
- 将上述两个源码包上传至服务器HUCX源码包安装目录,如“/path/to/download/hucx”。
- 执行以下命令,解压上述两个源码包。
tar -zxvf hucx-v1.2.1.spc001-huawei.tar.gz
tar -zxvf xucg-v1.2.1-huawei.tar.gz
- 执行以下命令,进入HUCX源码包安装路径。
- 执行以下命令,将XUCG源码包中的内容复制到HUCX源码包中的“src/ucg”目录下。
cp -r xucg-v1.2.1-huawei/* hucx-v1.2.1.spc001-huawei/src/ucg
- 执行以下命令,进入“autogen.sh”脚本所在目录。
- 执行以下命令,进行源码包安装。
./contrib/configure-opt --prefix=/path/to/install/hucx CC=clang CXX=clang++ FC=flang
for file in `find . -name Makefile`;do sed -i "s/-Werror//g" $file;done
for file in `find . -name Makefile`;do sed -i "s/-implicit-function-declaration//g" $file;done
make -j32
make -j32 install
make后面-j参数为并行编译参数,表示有多少CPU核数参与编译过程,请根据实际CPU核数进行指定。
- Hyper MPI编译
- 使用PuTTY工具,以Hyper MPI安装维护用户,如“hmpi_master”登录作业执行节点。
- 下载Hyper MPI源码包“hmpi-v1.2.1-huawei.tar.gz”。
下载地址:https://gitee.com/kunpengcompute/hmpi/archive/refs/tags/v1.2.1-huawei.tar.gz
- 将源码包上传至服务器Hyper MPI源码包安装目录,如“/path/to/download/hmpi”。
- 执行以下命令,进入源码包安装目录。
- 执行以下命令,解压软件包。
- 执行以下命令,进入“autogen.pl”脚本所在目录。
- 执行以下命令,进行Hyper MPI源码包安装。
./autogen.pl
./configure --prefix=/path/to/install/hmpi --with-platform=contrib/platform/mellanox/optimized --enable-mpi1-compatibility --with-ucx=/path/to/install/hucx CC=clang CXX=clang++ FC=flang
make
make install
- /path/to/install/hmpi:表示Hyper MPI的安装路径。
- /path/to/install/hucx:表示HUCX的安装路径。
配置环境变量
- 使用PuTTY工具,以Hyper MPI普通用户,如“hmpi_user”登录作业执行节点。
- 安装environment-modules工具。
- 执行以下命令,安装environment-modules。
表2 每种操作系统对应安装的操作步骤 操作系统
操作步骤
- CentOS Linux release 7.6 aarch64
- CentOS Linux release 8.2 aarch64
- Kylin Linux Advanced Server V10 SP2 aarch64
yum install -y environment-modules
Ubuntu18.04.5(ARM)
apt-get install -y environment-modules
- 执行以下命令,查看environment-modules是否安装成功。
回显如下类似信息,说明environment-modules安装成功。
Modules Release 4.1.1 (2018-02-17)
- 执行以下命令,安装environment-modules。
- 执行以下命令,在environment-modules工具安装路径下创建并编辑“Hmpi_modulefiles”配置文件。
- 打开“Hmpi_modulefiles”配置文件。
vi /path/to/install/Hmpi_modulefiles
- 按“i”进入编辑模式,修改如下内容。
#%Module1.0 # HMPI module for use with 'environment-modules' package: conflict mpi prepend-path OPAL_PREFIX /path/to/install/hmpi/ prepend-path PATH /path/to/install/hmpi/bin:/path/to/install/hucx/bin prepend-path LD_LIBRARY_PATH /path/to/install/hmpi/lib:/path/to/install/hucx/lib prepend-path INCLUDE /path/to/install/hmpi/include:/path/to/install/hucx/include
/path/to/install:表示environment-modules工具的安装路径。若用户不指定安装路径,则会安装在默认路径下,不同操作系统的默认路径如下。
- CentOS Linux release 7.6 aarch64、CentOS Linux release 8.2 aarch64、Kylin Linux Advanced Server V10 SP2 aarch64的默认路径:/usr/share/Modules/modulefiles
- Ubuntu18.04.5(ARM)的默认路径:/usr/share/modules/modulefiles
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开“Hmpi_modulefiles”配置文件。
- 执行以下命令,在工具安装路径下加载环境变量。
module load /path/to/install/Hmpi_modulefiles
- 执行以下命令,将Hyper MPI环境变量写到用户的“~/.bashrc”文件中。
- 打开“~/.bashrc”文件。
vi ~/.bashrc
- 按“i”进入编辑模式,添加如下内容。
module use /path/to/install module load /path/to/install/Hmpi_modulefiles
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
默认用户的“~/.bashrc”文件在共享目录中,若不在,请修改所有节点的“~/.bashrc”。
- 打开“~/.bashrc”文件。
- 执行以下命令,使配置生效。