gpt4 book ai didi

c - 找到所有进程中排名最高的

转载 作者:太空宇宙 更新时间:2023-11-04 03:47:37 25 4
gpt4 key购买 nike

我正在尝试学习 MPI。我如何找出 MPI_COMM_WORLD排名最高 的进程在 mpi 3 中?

     MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &my_rank);
MPI_Comm_size(MPI_COMM_WORLD, &p);

//More code here

MPI_Finalize();

我知道MPI_Comm_rank(MPI_COMM_WORLD, &my_rank);会让我得到调用进程的排名,但我想在 MPI_COMM_WORLD 中找到所有进程中排名最高的这样我就可以让该进程进行一些计算。

最佳答案

要获得排名最高的进程,您可以使用MPI_Comm_size(MPI_COMM_WORLD, …) 来确定MPI_COMM_WORLD 通信器上的进程总数。由于每个进程都是该通信器的一部分,并且进程是从 0 开始枚举的,要获得最高排名进程的排名,只需从 MPI_COMM_WORLD 的大小中减去 1:

int size = MPI_Comm_size(MPI_COMM_WORLD, &size);
int highest_rank = size - 1;

关于c - 找到所有进程中排名最高的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23058752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com