0
我有一個MPI程序(Fortran,MPICH),我需要將其從shell腳本中提取出來,該腳本依次啓動自己的MPI程序(使用mpirun
)。到目前爲止,我已經將shell(system
)命令包裝在if(system_num .eq. root_system_num)
事件中,所以只有一個MPI進程運行腳本。但是,這會導致一系列HYDU_create_process
錯誤。調用從MPI進程調用MPI進程的腳本
我認爲使用MPI_Comm_spawn
但也有像「MPI不說,如果你啓動的程序是一個shell腳本和shell腳本啓動調用MPI_INIT
程序會發生什麼」,所以這似乎不太理想,以及警告。
幾點:
- 稱爲shell腳本並不需要在所有調用程序進行交互的程序。調用程序只需等待該過程完成即可。
- 將shell腳本轉換爲單獨的可執行文件(很多環境變量設置,等等)並不容易。
- 理想情況下,這應該適用於MPICH和Open MPI。
有沒有辦法做到這一點?
是的,我傾向於MPI_Comm_spawn。但是現在我需要解析各種文件來解析代碼本身解析文件之前應該提取哪些環境變量。設計爲由Fortran讀取的文件,現在我必須製作一個shell腳本來完成它。 – 2013-04-11 13:43:17