[MPI] MPI 组通信 -- 全互换 MPI_Alltoall
2012-10-09 20:13
239 查看
学习资料 《高性能计算之并行编程技术 -- MPI并行程序设计》(都志辉 等)
学习笔记
函数
int MPI_Alltoall (void* sendbuf, int sendcount , MPI_Datatype sendtype, void* recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
sendbuf 发送消息缓冲区的起始地址(可选数据类型)
sendcount 发送到每个进程的数据个数(整型)
sendtype 发送消息缓冲区的数据类型(句柄)
recvbuf 接收消息缓冲区的起始地址(可选数据类型)
recvcount 从每个进程中接收的元素个数(整型)
recvtype 接收消息缓冲区的数据类型(句柄)
comm 通信域(句柄)
功能
MPI_ALLGATHER 每个进程散发一个相同的消息给所有的进程,MPI_ALLTOALL散发给不同进程的消息是不同的,因此它的发送缓冲区也是一个数组。 MPI_ALLTOALL的每个进程可以向每个接收者发送数目不同的数据。 第 i 个进程发送的第 j 块数据将被第 j 个进程接收并存放在其接收消息缓冲区 recvbuf 的第 i 块。 每个进程的 sendcount 和 sendtype 的类型必须和所有其他进程的 recvcount 和 recvtype 相同, 这意味着每个进程和根进程之间, 发送的数据量和接收的数据量相等。
MPI_ALLTOALL 全互换
学习笔记
函数
int MPI_Alltoall (void* sendbuf, int sendcount , MPI_Datatype sendtype, void* recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
sendbuf 发送消息缓冲区的起始地址(可选数据类型)
sendcount 发送到每个进程的数据个数(整型)
sendtype 发送消息缓冲区的数据类型(句柄)
recvbuf 接收消息缓冲区的起始地址(可选数据类型)
recvcount 从每个进程中接收的元素个数(整型)
recvtype 接收消息缓冲区的数据类型(句柄)
comm 通信域(句柄)
功能
MPI_ALLGATHER 每个进程散发一个相同的消息给所有的进程,MPI_ALLTOALL散发给不同进程的消息是不同的,因此它的发送缓冲区也是一个数组。 MPI_ALLTOALL的每个进程可以向每个接收者发送数目不同的数据。 第 i 个进程发送的第 j 块数据将被第 j 个进程接收并存放在其接收消息缓冲区 recvbuf 的第 i 块。 每个进程的 sendcount 和 sendtype 的类型必须和所有其他进程的 recvcount 和 recvtype 相同, 这意味着每个进程和根进程之间, 发送的数据量和接收的数据量相等。
MPI_ALLTOALL 全互换
相关文章推荐
- MPI全局通信之MPI_Alltoall和MPI_Alltoallv
- 采用MPI_Send 和MPI_Recv 编写代码来实现包括MPI_Bcast、MPI_Alltoall、MPI_Gather、MPI_Scatter 等MPI 群集通信函数的功能
- 并行群集通信:全互换 Alltoall
- one-to-all及all-to-all网络通信模式
- MPI_Alltoall
- MPI之自己实现Alltoall()函数
- MPI用MPI_Send, MPI_Recv实现MPI_Alltoall的块方法
- PAT 1087 All Roads Lead to Rome
- Computer magazine - All 2005 year - January to June 2005
- Kill All Active Connections To A Database.
- All you need to know about SYN floods
- pip install scrapy报错:error: Unable to find vcvarsall.bat解决方法(python scrapy安装windows下)
- How to Kill All Processes That Have Open Connection in a SQL Server Database[关闭数据库链接 最佳方法] -摘自网络
- [MPI] MPI 组通信 -- 组收集
- Hibernate逍遥游记-第5章映射一对多-02双向(<set>、<key>、<one-to-many>、inverse、cascade="all-delete-orphan")
- vim separate with . and replace all to end of line
- python—解决“Unable to find vcvarsall.bat”错误
- 运行Hadoop start-all.sh遇到的错误ssh: connect to host localhost port 22: Connection refused
- (10) MPI-IO -- fileview: MPI_File_read_all MPI_File_write_all
- All-In-One Code Framework(AIO): 如何使用C#编写进程外的COM组件 (How to write an out-of-proc COM server in C#)