关于mppool ucp_am_bufs的警告在MPI运行程序中意味着什么?



我正在运行一个c++程序,它可以在几个"处理器"上运行。使用MPI (mpirun (Open MPI) 4.0.1),一个c++库,允许一个程序的实例在不同的处理器上启动,并在一起通信。

对于熟悉MPI库的人来说你建议我怎么做或检查来处理下面的错误信息?

我的一个线索是,它可能来自一个阻塞命令(BSend, Brecv),等待来自我正在使用的一些节点的消息,我知道代码达到了它的终点,然后可能一些函数仍在等待消息。这只是我的猜测,因为我找不到任何关于"mpool"的信息。

提前感谢。

ERROR MESSAGE:

[1650458693.767260] [node10:30:51793:0] mpool.c:38 UCX WARN object 0x2ba6f718cf40 not return to mpool ucp_am_bufs

Post-scriptum:代码有一千行长,因此我不是要求帮助深入研究它,而是建议解释这个错误消息,如果它是一个通用的。非常感谢!

经过长时间的调查,我找到了错误的来源。我决定回复自己,以帮助任何想要找出类似错误的人。这个问题已经在MPI的GitLab上提出,但从未得到回答。

长话短说,我的"大师";处理器是mpi_向"从机"发送信息。处理器。与此同时,我的"主人"在发送这些信息时,所有的奴隶都关机了,因此才有了"主人"。生气却得不到回应

以后当MPI_Sending data时,我会(并且我会建议)检查从cpu的状态。

最新更新