mpirun -n 2 <prg>
两个进程的STDOUT流被合并,并通过外壳被显示。在这种交错的格式中,很难说哪一行来自哪个节点。
有没有办法让mpirun合并一个进程的标准输出到它的标准输出流?
mpirun -n 2 <prg>
两个进程的STDOUT流被合并,并通过外壳被显示。在这种交错的格式中,很难说哪一行来自哪个节点。
有没有办法让mpirun合并一个进程的标准输出到它的标准输出流?
该解决方案提供了以下包装:
#!/bin/sh
[email protected]
if [[ $OMPI_COMM_WORLD_RANK == 0 ]]
then
$ARGS
else
$ARGS 1>/dev/null 2>/dev/null
fi
感谢保罗Kapinos!
http://www.open-mpi.org/community/lists/users/2012/02/18362.php
尽量避免仅链接的答案。如果该网站发生故障或重组,您的答案将不再有效。如何从链接页面中总结解决方案? – 2012-02-01 17:31:56
我将总结解决方案。该链接意味着它是一个占位符。 – ritter 2012-02-01 19:07:22
我不确定这是否是可能的。我不确定你使用的是什么语言,但是你可以定义一个预处理器宏来重载你的打印语句,这样你的打印语句也可以被写入,或者你的打印语句被包装在一个检查进程等级的if语句中。 – Chris 2012-02-01 16:48:09