Основы MPI: Шесть основных функций

Нахождение ранга процесса

Ранг (номер по-порядку) используется, чтобы специфицировать отдельный процесс. Ранг является целым в интервале от 0 до size - 1, где size есть число процессов, которое возвращает функция MPI_Comm_size. MPI_Comm_rank возвращает ранг вызываемого процесса в точно определенном коммуникаторе.

Часто для процесса необходимо знать его собственный ранг. Например, Вам может захочется разбить вычислительную работу в цикле по всем вашим процессам, так чтобы каждый процесс выполнял подмножество в исходном диапазоне цикла. Один способ сделать это - для каждого процесса использовать его ранг для вычисления его диапазона в индексах цикла.

Позднее, когда мы изучим коммуникаторы, Вы увидите что процесс может принадлежать более чем одному коммуникатору, и может иметь различный ранг для каждого коммуникатора. Но сейчас будем полагать, что мы имеем дело только с предопределенным коммуникатором MPI_COMM_WORLD, который состоит из всех ваших процессов, как проиллюстрировано в выбранном примере.