Лого cs.karelia.ru Кафедра ИМО
Курсовая работа
Введение
Общие процедуры MPI
Передача сообщений
Прием сообщений
Пример
Источники

Valid HTML 4.01!


Общие процедуры MPI

int MPI_Init( int* argc, char*** argv)
MPI_Init - инициализация параллельной части приложения. Реальная инициализация для каждого приложения выполняется не более одного раза, а если MPI уже был инициализирован, то никакие действия не выполняются и происходит немедленный возврат из подпрограммы. Все оставшиеся MPI-процедуры могут быть вызваны только после вызова MPI_Init. Возвращает: в случае успешного выполнения - MPI_SUCCESS, иначе - код ошибки. (То же самое возвращают и все остальные функции, рассматриваемые в данном руководстве.)
int MPI_Finalize( void )
MPI_Finalize - завершение параллельной части приложения. Все последующие обращения к любым MPI-процедурам, в том числе к MPI_Init, запрещены. К моменту вызова MPI_Finalize некоторым процессом все действия, требующие его участия в обмене сообщениями, должны быть завершены.

Сложный тип аргументов MPI_Init предусмотрен для того, чтобы передавать всем процессам аргументы main:
int main(int argc, char** argv)
{
MPI_Init(argc, argv);
...
MPI_Finalize();
}

int MPI_Comm_size( MPI_Comm comm, int* size)
Определение общего числа параллельных процессов в группе comm.
• comm - идентификатор группы
• OUT size - размер группы

int MPI_Comm_rank( MPI_Comm comm, int* rank)
Определение номера процесса в группе comm. Значение, возвращаемое по адресу rank, лежит в диапазоне от 0 до size_of_group-1.
• comm - идентификатор группы
• OUT rank - номер вызывающего процесса в группе comm

double MPI_Wtime(void)
Функция возвращает астрономическое время в секундах (вещественное число), прошедшее с некоторого момента в прошлом. Гарантируется, что этот момент не будет изменен за время существования процесса.