2017-04-19 13 views
0

在我的實驗室中,我們有幾臺服務器用於模擬程序,但它們獨立工作。現在我想將它們組合成一個使用MPICH進行通信的集羣。但是存在一個問題,就是這些服務器有不同的操作系統。其中一些是Redhat,其中一些是Ubuntu。並且在MPICH的主頁上,我看到這兩種不同操作系統的下載站點不同,那麼是否可以建立一個具有不同操作系統的集羣?以及如何做到這一點?在運行不同操作系統的服務器上設置高性能計算集羣

我不想重新安裝這些服務器的原因是數據太多,當我提出這個問題時,他們正在使用。

回答

1

讓這個工作正常是不可行的。您應該能夠獲得手動安裝在不同發行版上的相同版本的MPI實現。他們甚至可能會相互交談。但是,儘快嘗試運行實際應用程序,使用動態庫時,您將遇到不同版本的共享庫glibc等問題。您將嘗試靜態鏈接所有內容,或爲不同的分發版構建不同的二進制文件。在一天結束的時候,你會追逐一個又一個問題。

作爲一個側面節點,將某些服務器與MPI結合在一起不構成高性能計算集羣。例如,HPC系統具有複雜的高性能互連和高性能並行文件系統。

另請注意,您的典型HPC應用程序將在異構硬件上運行不佳(因爲每個節點具有不同的CPU /內存配置)。

+0

如果我的程序可以分成不同的循環,每個循環可以單獨執行,該怎麼辦?我只需要將初始值傳遞給不同的從節點,然後每個節點不需要其他通信。最終結果可以寫入每個從節點。這個框架可以工作嗎? – zmwang

+0

問題不在於工作的分解,而在於基礎設施 - 這會使得嘗試這樣做非常痛苦。還有其他分佈式計算框架更適用於異構軟硬件環境。 – Zulan

+0

你對這個異構環境有什麼想法嗎? – zmwang

相關問題