Помощь в учёбе, очень быстро...
Работаем вместе до победы

Пакет программ MPI

РефератПомощь в написанииУзнать стоимостьмоей работы

Типы передаваемых данных. Сообщения могут быть разных типов: символьные, целочисленные (short, regular и long integers), с обычной и удвоенной точностью, с плавающей точкой и др. Из существующих типов можно образовать новые типы сообщений. Пакет MPI (Message-Passing Interface — интерфейс с передачей сообщений) для программирования мультикомпьютеров содержит значительно большее количество… Читать ещё >

Пакет программ MPI (реферат, курсовая, диплом, контрольная)

Пакет MPI (Message-Passing Interface — интерфейс с передачей сообщений) для программирования мультикомпьютеров содержит значительно большее количество библиотечных вызовов (процедур) и параметров на каждый вызов, чем PVM.

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

Рассмотрим четыре понятия, которые лежат в основе MPI. Коммуникатор — это группа процессов и контекст в виде метки, которая идентифицирует, например, фазу выполнения. В процессе отправки и получения сообщений контекст может использоваться для того, чтобы несвязанные сообщения не мешали друг другу.

Типы передаваемых данных. Сообщения могут быть разных типов: символьные, целочисленные (short, regular и long integers), с обычной и удвоенной точностью, с плавающей точкой и др. Из существующих типов можно образовать новые типы сообщений.

Операции коммуникации. Пакет MPI поддерживает большое количество операций коммуникации. Например, используемая операция MPI_Send для отправки сообщения в пункт назначения имеет поля:

  • buffer — пересылается содержимое буфера;
  • count — число элементов буфера;
  • datajypt- тип отправляемых данных;
  • tag — пометка для получателя, чтобы он смог принять сообщение только с данным тегом;
  • destination — индекс из списка процессов, который указывает, к какой группе процессов относится целевой процесс.

Вызов для получения отправленного сообщения MPIRecv имеет подобные поля. В нем сообщается, что получатель ищет сообщение определенного типа из определенного источника с определенным тегом.

Пакет MPI поддерживает четыре основных типа коммуникации:

  • синхронный тип, в котором отправитель не может начать передачу данных, пока получатель не вызовет процедуру MPI Recv;
  • коммуникацию с использованием буфера, при которой ограничение для синхронного типа недействительно;
  • стандартный тип, который зависит от реализации и может быть либо синхронным, либо с использованием буфера;
  • • тип, сходный с синхронным типом: отправитель требует, чтобы получатель был доступен, но без проверки.

Каждый из типов коммуникации бывает двух видов: блокирующим и неблокирующим.

Виртуальная топология. Пакет MPI поддерживает коллективную коммуникацию — широковещание, распределение и сбор данных, обмен данными и т. д. При этом все процессы в группе должны делать вызов с совместимыми параметрами, чтобы не возникали ошибки. Часто встречающаяся форма коллективной коммуникации организована в виде дерева, в котором передача ведется от листьев к корню, подчиняясь определенной обработке на каждом шаге (например, сложение значений или взятие максимума). Организация процессов (в дерево, кольцо или другим способом) облегчает коммуникацию.

Показать весь текст
Заполнить форму текущей работой