![](/user_photo/2706_HbeT2.jpg)
- •Екзаменаційний білет№1
- •Екзаменаційний білет№2
- •4.1 Системи з загальної та розподіленою пам'яттю
- •Екзаменаційний білет №5
- •5.1 Кс класу simd.
- •5.2 Mpi. Віртуальні топології
- •Екзаменаційний білет №6
- •Екзаменаційний білет №7
- •1, Матричні обчислювальні системи. (відповід кс 2 ) Методи розподілення доступу до спільної пам’яті в багатопроцесорних системах
- •Mimd компьютеры
- •Екзаменаційний білет №9
- •[Ред.]Альтернативи
- •Переваги та недоліки
- •Обмеження кількості процесорів
- •Проблема когерентності кеш-пам'яті
- •Екзаменаційний білет №10
- •Синхронізація обчислень.
- •Екзаменаційний білет №11
- •1.Порівняння кластерів та smp-систем.
- •2.Режими передачі даних.
- •Екзаменаційний білет №12
- •Системи зі змінним часом звертання до пам’яті.
- •Екзаменаційний білет №13
- •13.1 Структура cc-numa-систем
- •13.2 Одночасне виконання передачі і прийому.
- •Кзаменаційний білет №14
- •14.1 Види, переваги та недоліки numa-систем. Описание архитектуры.
- •Масштабируемость.
- •Модель программирования.
- •Достоинства и недостатки.
- •14.2 Узагальнена передача даних від одного процесу всім процесам.
- •Екзаменаційний білет №15
- •15.2 Узагальнена передача даних від всіх процесів одному процесу.
- •Процеси процеси
- •Екзаменаційний білет №17
- •Екзаменаційний білет №22
- •1 Питання
- •2 Питання
- •Екзаменаційний білет №23
- •1 Питання
- •2 Питання
- •Екзаменаційний білет №24
- •Паралельна обробка інформації.
- •Оголошення похідних типів і їх видалення. (відсутнє) екзаменаційний білет №25
- •1.Архітектура паралельних систем.
- •2.Формування повідомлень за допомогою упакування і розпакування даних
- •Екзаменаційний білет №26
- •1.Векторно-конвеєрні кс.
- •2.Керування групами процесів.
- •Екзаменаційний білет №27
- •1.Кс класу mimd.
- •2. Керування комунікаторами.
- •Екзаменаційний білет №28
- •1.Кс класу simd.
- •2. Декартові топології (решітка).
- •Екзаменаційний білет №29
- •1. Кластерні комп’ютерні системи.
- •2. Топології графа.
- •Екзаменаційний білет №30
- •2.Загальна характеристика середовища виконання mpi-програм.
2. Керування комунікаторами.
Доступ к коммуникаторам . Все следующие операции являются локальными.
Синтаксис функции MPI_COMM_SIZE представлен ниже
MPI_COMM_SIZE(comm, size)
IN comm коммуникатор (дескриптор)
OUT size количество процессов в группе comm (целое)
Объяснение: Функция MPI_COMM_SIZE эквивалентна: функции MPI_COMM_GROUP по доступу к группе коммуникатора; функции MPI_GROUP_SIZE по вычислению размера; функции
MPI_GROUP_FREE по удалению временной группы. Совокупность этих операций используется так часто, что понадобилось сокращение в виде функции MPI_COMM_SIZE.[]
Функция MPI_COMM_SIZE указывает число процессов в коммуникаторе. Для MPI_COMM_WORLD она указывает общее количество доступных процессов.
Запрос MPI_COMM_RANK указывает номер вызывающего процесса, который располагается в диапазоне от 0 до size-1, где size - возвращаемое значение MPI_COMM_SIZE.[]
MPI_COMM_RANK(comm, rank)
IN comm коммуникатор (дескриптор)
OUT rank номер вызывающего процесса в группе comm (целое)
Объяснение: Эта функция эквивалентна: по доступу к группе коммуникатора - функции MPI_COMM_GROUP; по вычислению номера - функции MPI_GROUP_RANK; по удалению временной группы - MPI_GROUP_FREE. Совокупность этих операций используется так часто, что оказалось полезным ввести функцию MPI_COMM_RANK.[]
В модели клиент-сервер создается много программ, где один процесс (обычно процесс ноль) играет роль распорядителя, а другие процессы служат вычислительными узлами. В такой структуре два предшествующих запроса полезны для определения ролей различных процессов коммуни-
катора.[]
Екзаменаційний білет №28
1.Кс класу simd.
SIMD (англ. single instruction, multiple data — одиночный поток команд, множественный поток данных, ОКМД) — принцип компьютерных вычислений, позволяющий обеспечить параллелизм на уровне данных.
SIMD-компьютеры состоят из одного командного процессора (управляющего модуля), называемого контроллером, и нескольких модулей обработки данных, называемых процессорными элементами. Управляющий модуль принимает, анализирует и выполняет команды. Если в команде встречаются данные, контроллер рассылает на все процессорные элементы команду, и эта команда выполняется на нескольких или на всех процессорных элементах. Каждый процессорный элемент имеет свою собственную память для хранения данных. Одним из преимуществ данной архитектуры считается то, что в этом случае более эффективно реализована логика вычислений. До половины логических инструкций обычного процессора связано с управлением выполнением машинных команд, а остальная их часть относится к работе с внутренней памятью процессора и выполнению арифметических операций. В SIMD компьютере управление выполняется контроллером, а «арифметика» отдана процессорным элементам.
SIMD-процессоры называются также векторными.
2. Декартові топології (решітка).
У MPI підтримуються два види топологій - прямокутні решітки довільної розмірності (декартова топологія) і топологія графа будь-якого довільного вигляду.
Декартові решітки можна розділяти на гіперплошщини, виділяючи деякі виміри. Дані можна зсувати вздовж вибраного виміру декартової решітки. Зсувом називають пересилку даних між процесами уздовж певного виміру. Уздовж вибраного виміру можуть бути організовані колективні обміни.
Декартові топології
Для того щоб створити структуру декартової решітки з комунікатором MPI_COMM_WORLD, необхідно задати наступні параметри:
розмірність решітки ; розмір решітки уздовж кожного виміру ; періодичність уздовж кожного виміру ;
MPI дає можливість системі оптимізувати відображення віртуальної топології процесів на фізичну за допомогою зміни порядку нумерації процесів в групі.
Функція MPI_Cart_create створює новий комунікатор, який представляє топологііію решітки. Це є колективною функція, вона повинна викликатись з усіх процесів комунікатора. Формат вункції:
int MPI_Cart_create(MPI_Comm oldcomm, int ndims, int *dims, int *periods, int reorder, MPI_Comm *cartcomm),
де - oldcomm - початковий комунікатор ; - ndims - розмірність декартової решітки; - dims - масив довжини ndims, задає кількість процесів в кожному вимірі решітки ;- periods - масив довжини ndims, визначає, чи є решітка періодичною уздовж відповідного виміру. ; - reorder - параметр допустимості зміни нумерації процесів; - cartcomm – створюваний комунікатор з декартовою топологією.
Для визначення декартових координат процесу по його номеру можна скористатися функцією:
int MPI_Card_coords(MPI_Comm comm, int rank, int ndims, int *coords)
Зворотна дія – визначення номеру процесу по його декартових координатах – забезпечується за допомогою функції:
int MPI_Cart_rank(MPI_Comm comm, int *coords, int *rank)
Функція MPI_Cart_shift забезпечує отримання номерів процесів, з якими поточний процес (процес, що викликав функцію MPI_Cart_shift) повинен виконати обмін даними:
int MPI_Cart_shift(MPI_Comm comm, int dir, int disp, int *source, int *dst),
- comm – комунікатор з топологією решітки,; - dir - номер виміру, по якому виконується зсув. ; - disp - величина зсуву (<0 – зсув до початку виміру) ; - source – номер процесу, від якого повинні бути отримані дані ; - dst - номер процесу якому повинні бути відправлені дані.
Слід зазначити, що функція MPI_Cart_shift тільки визначає номери процесів, між якими повинен бути виконаний обмін даними в ході операції зсуву. Безпосередня передачами даних може бути виконана, наприклад, за допомогою функції MPI_Sendrecv.