RISC-V公测平台发布:如何在SG2042上玩转OpenMPI

  • About HS-2

HS-2 RIC-V通用主板是澎峰科技与合作伙伴共同研发的一款专为开发者设计的标准mATX主板,它预装了澎峰科技为RISC-V高性能服务器定制开发的软件包,包括各种标准bencmark、支持V扩展的GCC编译器、计算库、中间件以及多种典型服务器应用程序。

HS-2 RISC-V通用主板搭载了一颗国产RISC-V 64核处理器(SG2042)。SG2042是目前已量产的性能最高的RISC-V处理器,主要针对高性能计算领域需求设计,适用于科学计算、工程计算、AI计算、融合计算等大算力应场景。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图1

  • About OpenMPI

OpenMPI是一个免费、开源、高性能的MPI实现,兼容MPI-1和MPI-2标准,并且还拥有完整的MPI-3.1标准。OpenMPI由开源社区开发维护,支持大多数类型的HPC平台。

官方网站:

https://www.open-mpi.org

实验方法

1. 下载OpenMPI源码包并解压,然后进入存放OpenMPI源码的文件夹

wget
https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.5.tar.gz
tar -xzvf openmpi-4.1.5.tar.gz
RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图2

2. 执行./configure,如果配置时没有报错的话那就说明配置检查通过,可以编译。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图3

3. 然后编译源代码并安装:

make -j[根据个人喜好或实际情况来决定编译时用的线程数]sudo make install

注意:make install记得要带sudo,否则会提示没有权限!

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图4

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图5

4. 接下来尝试运行mpicc并查看版本号,结果提示libopen-pal出现错误:

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图6

安装libopenblas-dev即可解决该问题(如果出现选项配置界面,保持默认即可)

sudo apt install libopenblas-dev
RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图7

再次运行mpicc --version和mpirun --version,如果显示版本号那就说明运行成功。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图8

5. OpenMPI提供了不少的示例代码供我们测试,涵盖了C、C++,甚至还有Java语言(是的,你没看错,还有Java语言,比如Hello.java文件等),不过在本教程中我们暂时不用Java,我们只用到C和C++代码。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图9

编译所有例子(把example下的所有例子全部编译一遍):

make -j[看你自己喜好,只要不超过最大核心数就行]
RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图10

执行mpirun -np 16 ring_usempi,如果出现以下内容就说明编译成功。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图11

6. 当然你也可以单独编译一个用C语言写的例子

mpicc ring_c.c -o ring_cmpirun -np 16 ring_c
RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图12

接下来尝试使用mpicxx单独编译C++程序,结果无法编译。经过排查发现当时configure的时候没带上--enable-mpi-cxx参数。因此,只要带上该参数重新配置并编译安装即可修复该问题。

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图13

实验总结

1. 如果在configure时提示缺少库,那么应该先安装相应的库,然后再重新编译。

2. 如果提示libopen-pal或者其他相关错误,请安装libopenblas-dev后重试。

3. 如果./configure不带上--enable-mpi-cxx参数,后续将无法编译C++ MPI程序。

4. 在RISC-V平台上跑OpenMPI对于RISC-V进入HPC世界来说只是一个开始,再加上SG2042的64核心的加持,能够让你在跑高性能计算应用的时候更加从容。

参考资料

OpenMPI官网下载页:

https://www.open-mpi.org/software/ompi/v4.1/

OpenMPI——上海交大超算平台用户手册

https://docs.hpc.sjtu.edu.cn/app/compilers_and_languages/open_mpi.html

正文完


《RISC-V公测平台发布》系列文章会持续跟大家分享澎峰RISC-V生态圈的开发者朋友们在RISC-V平台的移植测试成果,目前已发布:
1. RISC-V公测平台发布 ·Stream带宽完整测试

2. RISC-V公测平台发布 · 我的世界MohistMC

3. RISC-V公测平台发布 · 第一个WEB Server“Hello RISC-V world!”

4. RISC-V公测平台发布 ·如何在SG2042上玩转k3s

5. “RISC-V成长日记” blog发布,第一个运行在RISC-V服务器上的blog?

6. RISC-V公测平台发布:如何在SG2042上玩转OpenMPI(本篇)

悄悄说,可以通过 http://blog.rvv.top:8002“RISC-V Growth Dairy” Blog打卡。欢迎投稿~(发送Blog全文至邮箱riscvinfo@perfxlab.com)

欢迎RISC-V爱好者和生态建设志愿者持续关注和参与进来~加入讨论群后,向管理员申请可免费试用64RISC-V服务器SUDO权限账号。

  1. 发邮件到riscvinfo@perfxlab.com
  2. 加入微信讨论群:加iYuta-R2为好友后可拉入群

3. 加入QQ讨论群:906962594(RVBoards·Only RISC-V)

扫描二维码加群👇

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图14

  • 这是我们的开放的云测平台

    RISC-V公测平台发布:如何在SG2042上玩转OpenMPI的图15

对服务器平台有任何的疑问都可以查阅《快速使用指南》(实时更新),也可以加群一起讨论。

64核RISC-V高性能处理器公共测试云平台 ·快速使用指南
https://www.kdocs.cn/l/cmnYcyFIlVRx

默认 最新
当前暂无评论,小编等你评论哦!
点赞 1 评论 收藏
关注