我不得不承认,看到使用 MPI 传输一个 C 结构需要多少行代码,我感到非常震惊。
在什么情况下使用预定义的数据类型简单地传输结构MPI_CHAR
?考虑以下示例:
struct particle {
double x;
double y;
long i;
};
struct particle p;
MPI_Isend(&p, sizeof(particle), MPI_CHAR, tag, MPI_COMM_WORLD, &sendr);
就我而言,所有进程都在相同的架构上运行。填充是唯一的问题吗?