MPI_PACK 和 MPI_UNPACK

前面讲过,对于不同数据类型的数据和非连续的数据来说,我们可以用新建一个数据类型的方式来将这些数据做整体发送。另一种解决方案就是,将这些数据打包发送,然后在接收端再解包。这种方式就是标题的这两个函数的作用,他们就简单的很多,因为逻辑非常单纯。这里有示例代码:

有人要问,既然这个能解决问题又简单,为什么MPI还要定义新数据类型这个难懂又麻烦的东东呢?我的理解是这样的:MPI给我们一个机会,让我们可以定义新的数据类型,这样第一,能让我们的代码逻辑性更好,可读性更强;第二,对于MPI2所定义的并行文件操作来说,有了自定义数据类型的支持,无疑能给文件的读写带来极大的便利(我们可以将一堆无关的数据重新定义,然后整体从文件读出或向文件写入)。
原文地址:https://www.cnblogs.com/super119/p/2036406.html