我在單機模式下使用mpirun
在OS X上使用mpirun -np 5 my_program
運行我的程序麻煩,我得到了下面的錯誤輸出:一臺機器上在OS X上使用的mpirun
[...-MacBook-Pro.local:85936] [0,0,0] ORTE_ERROR_LOG: Timeout in file /SourceCache/openmpi/openmpi-8/openmpi/orte/mca/pls/base/pls_base_orted_cmds.c at line 275
[...-MacBook-Pro.local:85936] [0,0,0] ORTE_ERROR_LOG: Timeout in file /SourceCache/openmpi/openmpi-8/openmpi/orte/mca/pls/rsh/pls_rsh_module.c at line 1158
[...-MacBook-Pro.local:85936] [0,0,0] ORTE_ERROR_LOG: Timeout in file /SourceCache/openmpi/openmpi-8/openmpi/orte/mca/errmgr/hnp/errmgr_hnp.c at line 90
mpirun noticed that job rank 1 with PID 85940 on node ...-MacBook-Pro.local exited on signal 6 (Abort trap).
2 additional processes aborted (not shown)
顯然,在默認情況下mpirun
使用rsh
連接到機器。我試着用ssh
代替,但它並沒有幫助:
mpirun --mca pls_rsh_agent ssh -np 5 my_program
然後,我嘗試使用共享內存(sm
)BTL,這並沒有幫助:
mpirun --mca btl self,sm -np 5 my_program
最後,我試圖用一臺機器文件來指定,我只希望使用localhost
,這並沒有幫助:
mpirun -np 5 -machinefile machinefile.local my_program
這裏,machinefile.local
只包含(單)第一行上的。
在上述所有情況下,我都會收到上面的超時錯誤。
另外,我驗證了我的Mac OS X防火牆沒有運行,並且我可以SSH入我的機器。