Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРО(теорія).doc
Скачиваний:
4
Добавлен:
20.09.2019
Размер:
461.31 Кб
Скачать

2.Керування групами процесів.

Синтаксис функции MPI_GROUP_SIZE для определения размера группы представлен ниже.

MPI_GROUP_SIZE (group, size)

IN group группа (дескриптор)

OUT size количество процессов в группе (целое)

Синтаксис функции MPI_GROUP_RANK для определения номера процесса в группе представлен ниже.

MPI_GROUP_RANK (group, rank)

IN group группа (дескриптор)

OUT rank номер процесса в группе или MPI_UNDEFINED, если процесс не является членом группы (целое)

Синтаксис функции MPI_GROUP_TRANSLATE_RANKS представлен ниже.

MPI_GROUP_TRANSLATE_RANKS(group1, n, ranks1, group2, ranks2)

IN group1 группа1 (дескриптор)

IN n число номеров в массивах ranks1 и ranks2 (целое)

IN ranks1 массив из нуля или более правильных номеров в группе1

IN group2 группа2 (дескриптор)

OUT ranks2 массив соответствующих номеров в группе2, MPI_UNDEFINED, если соответствие отсутствует.

Эта функция важна для определения относительной нумерации одинаковых процессов в двух различных группах. Например, если известны номера некоторых процессов в группе коммуникатора MPI_COMM_WORLD, то можно узнать их номера в подмножестве этой группы.

Синтаксис функции MPI_GROUP_COMPARE представлен ниже.

MPI_GROUP_COMPARE(group1, group2, result)

IN group1 первая группа (дескриптор)

IN group2 вторая группа (дескриптор)

OUT result результат (целое)

Если члены группы и их порядок в обеих группах совершенно одинаковы, возвращается результат MPI_IDENT. Это происходит, например, если group1 и group2 имеют тот же самый дескриптор. Если члены группы одинаковы, но порядок различен, то возвращается результат MPI_SIMILAR. В остальных случаях возвращается значение MPI_UNEQUAL.

Екзаменаційний білет №27

1.Кс класу mimd.

MIMD комп'ютер має N процесорів, незалежно виконуючих N потоківкоманд і обробних N потоків даних. Кожен процесор функціонуєпід управлінням власного потоку команд, тобто MIMD комп'ютер можепаралельно виконувати зовсім різні програми.

MIMD архітектури далі класифікуються в залежності від фізичноїорганізації пам'яті, тобто чи має процесор свою власну локальнупам'ять і звертається до інших блоків пам'яті, використовуючи комутуючих мережу,або комутуються мережа приєднує всі процесори до загальнодоступної пам'яті.

Виходячи з організації пам'яті, розрізняють наступні типи паралельнихархітектур:

• Комп'ютери з розподіленою пам'яттю (Distributed memory)

Процесор може звертатися до локальної пам'яті, може посилати й одержуватиповідомлення, що передаються по мережі, що з'єднує процесори.

• Комп'ютери з загальною (що розділяється) пам'яттю (True shared memory)

Всі процесори спільно звертаються до загальної пам'яті, звичайно, через шину абоієрархію шин.

• Комп'ютери з віртуальною загальною (що розділяється) пам'яттю (Virtual sharedmemory)

Спільна пам'ять як така відсутня. Кожен процесор маєвласну локальну пам'ять і може звертатися до локальної пам'яті іншихпроцесорів, використовуючи "глобальну адресу". Якщо "глобальна адреса"вказує не на локальну пам'ять, то доступ до пам'яті реалізується за допомогоюповідомлень, що пересилаються по комунікаційної мережі.