Определение количества процессов в выполняемой параллельной программе осуществляется при помощи функции:
int MPI_Comm_size(MPI_Comm comm, int *size),
где
Для определения ранга процесса используется функция:
int MPI_Comm_rank(MPI_Comm comm, int *rank),
где
Как правило, вызов функций MPI_Comm_size и MPI_Comm_rank выполняется сразу после MPI_Init для получения общего количества процессов и ранга текущего процесса:
#include "mpi.h" int main(int argc, char *argv[]) { int ProcNum, ProcRank; <программный код без использования функций MPI> MPI_Init(&agrc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &ProcNum); MPI_Comm_rank(MPI_COMM_WORLD, &ProcRank); <программный код с использованием функций MPI> MPI_Finalize(); <программный код без использования функций MPI> return 0; }
Следует отметить: