在MPI收集和分散中,有两个发送和接收计数。我检查了文档,发现它们都应该具有相同的值。
例如: - 在MPI_Gather()
中,send_count
和receive_count
都应具有发送缓冲区大小。 https://www.mpich.org/static/docs/v3.1/www3/MPI_Gather.html
有人可以解释这个冗余参数的用途是什么吗?
答案 0 :(得分:4)
在某种程度上,您可以使用不同的类型 - 但总大小需要匹配。
或者更确切地说,the standard解释说:
每个进程的
sendcount
,sendtype
类型签名必须是 等于根recvcount
,recvtype
的类型签名。这个 意味着发送的数据量必须等于 收到的数据,每个进程和根之间成对。不同 发送者和接收者之间的类型映射仍然是允许的。