Pointers MPI&x2B;函数指针?

Pointers MPI&x2B;函数指针?,pointers,parallel-processing,distributed,mpi,virtual-address-space,Pointers,Parallel Processing,Distributed,Mpi,Virtual Address Space,如果我在MPI配置的Beowulf集群的多个节点上运行相同的二进制文件(这意味着相同的体系结构),那么通过MPI传递函数指针作为通知另一个节点调用函数的一种方式是否安全?在什么情况下(如果有的话),同一个二进制文件中的同一个函数在不同的机器或不同的实例上可以有不同的虚拟地址?将任何类型的指针传递给其他进程,而不是每个集合MPI\u file\u OPEN(由MPI维护)的一个共享文件指针。单独的地址空间意味着指针值在生成它的进程之外的任何进程中都是无用的 另一方面,您可以传递有关希望每个进程调用

如果我在MPI配置的Beowulf集群的多个节点上运行相同的二进制文件(这意味着相同的体系结构),那么通过MPI传递函数指针作为通知另一个节点调用函数的一种方式是否安全?在什么情况下(如果有的话),同一个二进制文件中的同一个函数在不同的机器或不同的实例上可以有不同的虚拟地址?

将任何类型的指针传递给其他进程,而不是每个集合MPI\u file\u OPEN(由MPI维护)的一个共享文件指针。单独的地址空间意味着指针值在生成它的进程之外的任何进程中都是无用的


另一方面,您可以传递有关希望每个进程调用哪个函数的信息,或者让每个进程单独决定。当然,这取决于您的代码在做什么。

将任何类型的指针传递给其他进程,而不是将每个集合MPI\u file\u OPEN(由MPI维护)的一个共享文件指针传递给其他进程都是毫无意义的。单独的地址空间意味着指针值在生成它的进程之外的任何进程中都是无用的


另一方面,您可以传递有关希望每个进程调用哪个函数的信息,或者让每个进程单独决定。当然,这取决于您的代码在做什么。

只需创建填充已知顺序和传递函数ID的函数数组。

只需创建填充已知顺序和传递函数ID的函数数组。

表明通过禁用ASLR可以发送函数指针。建议通过禁用ASLR可以发送函数指针。