intel-mpi相关内容

在其他通信器中收到的MPI消息

据我了解,MPI传播者会限制传播范围,例如 从一个通信器发送的消息永远不会在另一通信器中接收. 但是,下面内联的程序似乎与此矛盾. 我知道MPI_Send调用在发布匹配的接收之前返回,因为它在内部进行了内部缓冲(与MPI_Ssend相反).我还了解到MPI_Comm_free不会立即销毁通信器,而只是将其标记为可释放,并等待任何未完成的操作完成.我想我无与伦比的send操作将永远挂起, ..
发布时间:2020-05-12 20:02:20 其他开发

防止MPI忙循环

我有一个MPI程序,该程序超额预订/超额使用其处理器.那就是:进程比处理器多得多. 但是,在给定的时间中,只有少数几个进程处于活动状态,因此不应争用计算资源. 但是,就像海底总动员中的海鸥一样,当这些进程等待通信时,它们都忙于循环,问“我的?我的?我的?" b&b ; rel ="noreferrer"> 我同时使用Intel MPI和OpenMPI( ..
发布时间:2020-05-12 19:55:35 C/C++开发

MPI_SEND占用虚拟内存的很大一部分

在大量内核上调试我的程序,我遇到了insufficient virtual memory的非常奇怪的错误.我的调查导致了代码的安全性,其中主机向每个从机发送小消息.然后,我编写了一个小程序,其中1个主机仅使用MPI_SEND发送10个整数,而所有从机均使用MPI_RECV接收它.比较MPI_SEND之前和之后的文件/proc/self/status,发现内存大小之间的差异非常大!最有趣的事情(这使 ..
发布时间:2020-05-01 09:44:59 服务器开发

MPI消息在不同的通信器中收到 - 错误的程序或MPI实现错误?

这是我以前的这个问题的后续行动,其结论是程序错误,因此预期的行为是未定义的。 我在这里创建的是一个简单的错误处理机制,为此我使用Irecv请求空消息作为“中止句柄”,将其附加到我正常的 MPI_Wait 调用(并将其转换为 MPI_WaitAny ),为了允许我解除对进程1的阻止,以防在进程0发生错误,并且它不能再达到它应该发布匹配的code> MPI_Recv 。 发生的是,由于内部 ..
发布时间:2017-08-28 03:56:52 开发方法