Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EKZAMENATsIJNIJ_BILET_6-10 (2).doc
Скачиваний:
1
Добавлен:
21.09.2019
Размер:
132.61 Кб
Скачать
  1. Визначення часу виконання mpi-програми.

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

Отримання поточного моменту часу забезпечується за допомогою функції:

double MPI_Wtime (void),

результат її виклику є кількість секунд, що минув від деякого певного моменту часу в минулому. Цей момент часу в минулому, від якого відбувається відлік секунд, може залежати від середовища реалізації бібліотеки MPI, і, тим самим, для відходу від такої залежності функцію MPI_Wtime слід використовувати тільки для визначення тривалості виконання тих чи інших фрагментів коду паралельних програм. Можлива схема застосування функції MPI_Wtime може полягати в наступному:

double t1, t2, dt;

t1 = MPI_Wtime ();

ѕ

t2 = MPI_Wtime ();

dt = t2 - t1;

Точність вимірювання часу також може залежати від середовища виконання паралельної програми. Для визначення поточного значення точності може бути використана функція:

double MPI_Wtick (void),

дозволяє визначити час в секундах між двома послідовними показниками часу апаратного таймера застосованої комп'ютерної системи.

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

  1. Кс класу mimd.

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

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

1) Комп'ютери з розподіленою пам'яттю (Distributed memory)Процесор може звертатися до локальної пам'яті, може посилати і отримувати повідомлення, що передаються по мережі, що з'єднує процесори. Повідомлення використовуються для здійснення зв'язку між процесорами або, що еквівалентно, для читання і запису віддалених блоків пам'яті. В ідеалізованої мережі вартість посилки повідомлення між двома вузлами мережі не залежить як від розташування обох вузлів, так і від трафіку мережі, але залежить від довжини повідомлення. 

 2) Комп'ютери з загальною (що розділяється) пам'яттю (True shared memory)Всі процесори спільно звертаються до загальної пам'яті, звичайно, через шину або ієрархію шин. В ідеалізованої PRAM (Parallel Random Access Machine - паралельна машина з довільним доступом) моделі, часто використовуваної в теоретичних дослідженнях паралельних алгоритмів, будь-який процесор може звертатися до будь-якої комірки пам'яті за один і той же час. На практиці масштабованість цієї архітектури звичайно приводить до деякої формі ієрархії пам'яті. Частота звернень до загальної пам'яті може бути зменшена за рахунок збереження копій часто використовуваних даних у кеш-пам'яті, пов'язаної з кожним процесором. Доступ до цього кеш-пам'яті набагато швидше, ніж безпосередньо доступ до загальної пам'яті.  

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

Прикладом машин із загальною пам'яттю можуть служити:

1) Sun Microsystems (багатопроцесорні робочі станції)

2) Silicon Graphics Challenge (багатопроцесорні робочі станції)

3) Sequent Symmetry

4) Convex

5) Cray 6400

Наступні комп'ютери належать до класу машин з розподіленою пам'яттю

1) IBM-SP1/SP2

2) Parsytec GC

3) CM5 (Thinking Machine Corporation)

4) Cray T3D

5) Paragon (Intel Corp.)

6) KSR1

7) nCUBE

8) Meiko CS-2

9) AVX (Alex Parallel Computers)

10) IMS B008

MIMD архітектури з розподіленою пам'яттю можна так само класифікувати по пропускної здатності коммутирующей мережі. Наприклад, в архітектурі, в якій пари з процесора і модуля пам'яті (процесорний елемент) з'єднані мережею з топологій реш § тка, кожен процесор має одне і те ж число підключень до мережі незалежно від числа процесорів комп'ютера. Загальна пропускна здатність такої мережі зростає лінійно щодо числа процесорів. З іншого боку в архітектурі, що має мережу з топологій Гіперкуб, число з'єднань процесора з мережею є логарифмічною функцією від числа процесорів, а пропускна здатність мережі зростає швидше, ніж лінійно по відношенню до числа процесорів. У топології кліка кожен процесор має бути з'єднаний з усіма іншими процесорами.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]