114 练习 - 数据类型 |
目标:学习数据类型
让处理器0拥有整个矩阵,此矩阵与处理器有同样多的行。
处理器0发送行i到处理器i。
处理器i读取此行到仅容纳此行的局部数组中,即,处理器0有矩阵A(N,M),而其它处理器有一行B(M)。
写一个程序来处理这种情况,其中矩阵是方阵。
写一个程序来处理从终端读取许多列。
如果愿意,程序员可以发送矩阵的列,此矩阵以行主形式存储。
如果你有时间,尝试下面之一。如果你没有时间,思考你怎样编写。
使用MPI_Send 和MPI_Recv来发送块,处理块。
使用MPI_Sendrecv
创建一个数据类型以允许你接受已经处理的块。
使用拓扑来发现邻居。
为“行”定义数据类型。
使用MPI_Sendrecv 或者MPI_IRecv 和MPI_Send 同MPI_Waitall一起
使用MPI_Isend 和MPI_Irecv来启动通信,在内部做一些计算,然后使用 MPI_Waitany来处理它们所达到的边界。
同样的方法适用于通用的数据结构,例如非结构化网格。
Copyright: NPACT |