- •Оглавление
- •Введение
- •Mpi. Терминология и обозначения
- •Стандарты mpi
- •Классы решаемых задач
- •Функционирование интерфейса
- •Общие процедуры mpi
- •Прием/передача сообщений между отдельными процессами Прием/передача сообщений с блокировкой
- •Прием/передача сообщений без блокировки
- •Объединение запросов на взаимодействие
- •Совмещенные прием/передача сообщений
- •Коллективные взаимодействия процессов
- •Синхронизация процессов
- •Работа с группами процессов
- •Работа с mpi под Ос Ubuntu
- •Установка библиотек mpi для Ос Ubuntu
- •Источники и Литература
Оглавление
Введение……………………………………………………………………………………3
Терминология и обозначения……………………………………………………………. 3
Стандарты MPI…………………………………………………………………………….3
Классы решаемых задач…………………………………………………………………...4
Функционирование интерфейса………………………………………………………….4
Общие процедуры MPI……………………………………………………………………5
Прием/передача сообщений с блокировкой……………………………………..6
Прием/передача сообщений без блокировки……………………………………7
Объединение запросов на взаимодействие……………………………………..10
Совмещенные прием/передача сообщений……………………………………..11
Коллективные взаимодействия процессов……………………………………...12
Синхронизация процессов……………………………………………………….13
Работа с MPI под Ос Ubuntu……………………………………………………………..14
Установка библиотек MPI для Ос Ubuntu………………………………………………14
Запуск С программы на ОС Ubuntu +MPI………………………………………………15
Выводы……………………………………………………………………………............16
Источники и литература…………………………………………………………………17
Введение
MPI расшифровывается как "Message passing interface" ("Интерфейс передачи сообщений"). MPI - это стандарт на программный инструментарий для обеспечения связи между отдельными процессами параллельной задачи. MPI предоставляет программисту единый механизм взаимодействия процессов внутри параллельно исполняемой задачи независимо от машинной архитектуры (однопроцессорные, многопроцессорные с общей или раздельной памятью), взаимного расположения процессов (на одном физическом процессоре или на разных) и API операционной системы. Программа, использующая MPI, легко отлаживается и переносится на другие платформы, часто для этого достаточно простой перекомпиляции исходного текста программы.
Mpi. Терминология и обозначения
MPI - message passing interface - библиотека функций, предназначенная для поддержки работы параллельных процессов в терминах передачи сообщений.
Номер процесса - целое неотрицательное число, являющееся уникальным атрибутом каждого процесса.
Атрибуты сообщения - номер процесса-отправителя, номер процесса-получателя и идентификатор сообщения. Для них заведена структура MPI_Status, содержащая три поля: MPI_Source (номер процесса отправителя), MPI_Tag (идентификатор сообщения), MPI_Error (код ошибки); могут быть и добавочные поля.
Идентификатор сообщения (msgtag) - атрибут сообщения, являющийся целым неотрицательным числом, лежащим в диапазоне от 0 до 32767. Процессы объединяются в группы, могут быть вложенные группы. Внутри группы все процессы перенумерованы. С каждой группой ассоциирован свой коммуникатор. Поэтому при осуществлении пересылки необходимо указать идентификатор группы, внутри которой производится эта пересылка. Все процессы содержатся в группе с предопределенным идентификатором MPI_COMM_WORLD.
Параллельный алгоритм — алгоритм, который может быть реализован по частям на множестве различных вычислительных устройств с последующим объединением полученных результатов и получением корректного результата.
Параллельные вычислительные системы — это физические компьютерные, а также программные системы, реализующие тем или иным способом параллельную обработку данных на многих вычислительных узлах