源码安装Hyper MPI
前提条件
编译环境变量检查
GCC编译Hyper MPI软件包
Hyper MPI包含Hyper MPI和HUCX两个软件层,其中Hyper MPI的安装依赖于HUCX,编译时应先编译HUCX。
- HUCX编译
- 使用PuTTY工具,以Hyper MPI安装维护用户,如“hmpi_master”登录作业执行节点。
- 下载HUCX源码包“hucx-1.1.1-huawei.tar.gz”。
下载地址:https://github.com/kunpengcompute/hucx/archive/refs/tags/v1.1.1-huawei.tar.gz。
- 下载XUCG源码包“xucg-1.1.1-huawei.tar.gz”。
下载地址:https://github.com/kunpengcompute/xucg/archive/refs/tags/v1.1.1-huawei.tar.gz。
- 将上述两个源码包上传至服务器HUCX源码包安装目录,如“/path/to/download/hucx”。
- 执行以下命令,解压上述两个源码包。
tar -zxvf hucx-1.1.1-huawei.tar.gz
tar -zxvf xucg-1.1.1-huawei.tar.gz
- 执行以下命令,进入HUCX源码包安装路径。
- 执行以下命令,将XUCG源码包中的内容复制到HUCX源码包中的“src/ucg”目录下。
cp -r xucg-1.1.1-huawei/* hucx-1.1.1-huawei/src/ucg
- 执行以下命令,进入“autogen.sh”脚本所在目录。
cd hucx-1.1.1-huawei/
- 执行以下命令,进行源码包安装。
./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-1.1.1-huawei.tar.gz”。
下载地址: https://github.com/kunpengcompute/hmpi/archive/refs/tags/v1.1.1-huawei.tar.gz
- 将源码包上传至服务器Hyper MPI源码包安装目录,如“/path/to/download/hmpi”。
- 执行以下命令,进入源码包安装目录。
- 执行以下命令,解压软件包。
- 执行以下命令,进入“autogen.pl”脚本所在目录。
cd hmpi-1.1.1-huawei/
- 执行以下命令,进行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-1.1.1-huawei.tar.gz”。
下载地址:https://github.com/kunpengcompute/hucx/archive/refs/tags/v1.1.1-huawei.tar.gz。
- 下载XUCG源码包“xucg-1.1.1-huawei.tar.gz”。
下载地址: https://github.com/kunpengcompute/xucg/archive/refs/tags/v1.1.1-huawei.tar.gz。
- 将上述两个源码包上传至服务器HUCX源码包安装目录,如“/path/to/download/hucx”。
- 执行以下命令,解压上述两个源码包。
tar -zxvf hucx-1.1.1-huawei.tar.gz
tar -zxvf xucg-1.1.1-huawei.tar.gz
- 执行以下命令,进入HUCX源码包安装路径。
- 执行以下命令,将XUCG源码包中的内容复制到HUCX源码包中的“src/ucg”目录下。
cp -r xucg-1.1.1-huawei/* hucx-1.1.1-huawei/src/ucg
- 执行以下命令,进入“autogen.sh”脚本所在目录。
cd hucx-1.1.1-huawei/
- 执行以下命令,进行源码包安装。
./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-1.1.1-huawei.tar.gz”。
下载地址:https://github.com/kunpengcompute/hmpi/archive/refs/tags/v1.1.1-huawei.tar.gz
- 将源码包上传至服务器Hyper MPI源码包安装目录,如“/path/to/download/hmpi”。
- 执行以下命令,进入源码包安装目录。
- 执行以下命令,解压软件包。
- 执行以下命令,进入“autogen.pl”脚本所在目录。
cd hmpi-1.1.1-huawei/
- 执行以下命令,进行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工具安装路径下创建并编辑“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工具的安装路径。用户若不指定安装路径,则默认安装在“/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”文件。
- 执行以下命令,使配置生效。