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

Valid HTML 4.01!


Прием/передача сообщений между отдельными процессами

Передача сообщений с блокировкой

int MPI_Send(void* buf, int count, MPI_Datatype datatype, int dest, int msgtag, MPI_Comm comm)
.buf - адрес начала буфера посылки сообщения
.count - число передаваемых элементов в сообщении
.datatype - тип передаваемых элементов
.dest - номер процесса-получателя
.msgtag - идентификатор сообщения
.comm - идентификатор группы
Блокирующая посылка сообщения с идентификатором msgtag, состоящего из count элементов типа datatype, процессу с номером dest. Все элементы сообщения расположены подряд в буфере buf. Значение count может быть нулем. Тип передаваемых элементов datatype должен указываться с помощью предопределенных констант типа. Разрешается передавать сообщение самому себе. Блокировка гарантирует корректность повторного использования всех параметров после возврата из подпрограммы. Выбор способа осуществления этой гарантии: копирование в промежуточный буфер или непосредственная передача процессу dest, остается за MPI. Следует специально отметить, что возврат из подпрограммы MPI_Send не означает ни того, что сообщение уже передано процессу dest, ни того, что сообщение покинуло процессорный элемент, на котором выполняется процесс, выполнивший MPI_Send.