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

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

1