[MPI] MPI 组通信 -- 组收集
2012-10-09 20:12
162 查看
学习资料 《高性能计算之并行编程技术 -- MPI并行程序设计》 (都志辉)
学习笔记
MPI_GATHER是将数据收集到ROOT进程,而MPI_ALLGATHER相当于每一个进程都作为ROOT执行了一次MPI_GATHER调用, 即每一个进程都收集到了其他所有进程的数据。
函数:
int MPI_Allgather(void* sendbuf, int sendcount, MPI_Datatype sendtype, void* recvbuf, int recvcount, MPI_Datatype recvtype,
MPI_Comm comm)
sendbuf 发送消息缓冲区的起始地址(可选数据类型)
sendcount 发送消息缓冲区中的数据个数(整型)
sendtype 发送消息缓冲区中的数据类型(句柄)
recvbuf 接收缓冲区的起始地址(可选数据类型)
recvcount 从其它进程中接收的数据个数(整型)
recvtype 接收消息缓冲区的数据类型(句柄)
comm 通信域
组收集图示
这里,收集的数据是按进程0到N-1排列。
学习感想
这里要理解“组”的定义,组表示组内所有成员,函数上多了ALL字符串。
学习笔记
MPI_GATHER是将数据收集到ROOT进程,而MPI_ALLGATHER相当于每一个进程都作为ROOT执行了一次MPI_GATHER调用, 即每一个进程都收集到了其他所有进程的数据。
函数:
int MPI_Allgather(void* sendbuf, int sendcount, MPI_Datatype sendtype, void* recvbuf, int recvcount, MPI_Datatype recvtype,
MPI_Comm comm)
sendbuf 发送消息缓冲区的起始地址(可选数据类型)
sendcount 发送消息缓冲区中的数据个数(整型)
sendtype 发送消息缓冲区中的数据类型(句柄)
recvbuf 接收缓冲区的起始地址(可选数据类型)
recvcount 从其它进程中接收的数据个数(整型)
recvtype 接收消息缓冲区的数据类型(句柄)
comm 通信域
组收集图示
这里,收集的数据是按进程0到N-1排列。
学习感想
这里要理解“组”的定义,组表示组内所有成员,函数上多了ALL字符串。
相关文章推荐
- [MPI] MPI 组通信 -- 收集
- MPI + FORTRAN 非阻塞通信交换数组边界测试程序
- MPI全局通信之MPI_Alltoall和MPI_Alltoallv
- [MPI] MPI组通信 -- 组归约
- Gamekit 多个iOS设备之间通过蓝牙4.0 通信、交互、游戏等文章的收集
- 【MPI学习4】MPI并行程序设计模式:非阻塞通信MPI程序设计
- MPI聚合通信之MPI_Gather函数
- [MPI] MPI 组通信 -- 归约并散发
- 多线程:JAVA线程通信的方法收集
- 【MPI学习5】MPI并行程序设计模式:组通信MPI程序设计
- MPI中的非阻塞通信
- java c++ 混合通信(收集)
- mpi学习日志(7):mpi4py与通信子,通信组
- MPI学习五 组通信MPI程序设计
- [MPI] MPI 组通信 -- 扫描
- [MPI] 不正确的组通信方式
- 我的并行计算之路(三)MPI集合通信之Scatter和Gather
- iPhone 蓝牙通信编程初步(网上收集)
- MPI学习——jacabi迭代(非阻塞通信与重复阻塞通信)
- 【MPI学习7】MPI并行程序设计模式:MPI的进程组和通信域