Понятие коммуникаторов
Процессы параллельной программы объединяются в группы.
Коммуникатор(по[Корнеев] переключатель каналов) определяется, как служебный объект с рядом атрибутов и правилами, которые управляют его созданием, использованием, разрушением. Данный объект служит для определения области связи, которая может использоваться для точечных или коллективных взаимодействий между процессорами.
По типу различают следующие коммуникаторы:
- Интракоммуникаторы(intracommunicator) - используются для связи процессов внутри группы заданной топологии, которая указывает положение процессов в группе
- Интеркоммуникторы(intercommunicator) - используются для взаимодействия между двумя непересекающимися группами. При этом установленные атрибуты интеркоммуникатора состоят из двух групп. Никакая тополгия не связанна с интеркоммуникатором.
Парные операции передачи данных, как правило, выполняются для процессов, принадлежащих одному и тому же коммуникатору.
Коллективные операции применяются одновременно для всех процессов коммуникатора.
Таким образом, указание используемого коммуникатора является обязательным для операций передачи данных в MPI.
В ходе вычислений могут создаваться новые и удаляться существующие группы процессов и коммуникаторы. Один и тот же процесс может принадлежать разным группам и коммуникаторам. Все имеющиеся в параллельной программе процессы входят в состав создаваемого по умолчанию коммуникатора с идентификатором MPI_COMM_WORLD.
Дата добавления: 2015-02-03; просмотров: 920;