Лабораторна робота №3. Вивчення структури комп'ютерних систем. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторна робота №3. Вивчення структури комп'ютерних систем.



Мета роботи: Засвоїти структуру комп’ютерних систем.

 

Теоретичні відомості:

Структуру комп’ютерної системи за класифікацією MIMD, розділяють таким чином:

· повний граф (completely-connected graph or clique) – система, в якій між будь-якою парою процесорів існує пряма лінія зв'язку;

· лінійка (linear array or farm) – система, у якій усі процесори перенумеровано один по одному й кожний процесор, крім першого й останнього, має лінія зв'язку тільки із двома сусідніми;

· зірка (star) – система, в якій усі процесори мають лінії зв'язку з деяким управляючим процесором;

· решітка (mesh) – система, у якій граф ліній зв'язку утворює прямокутну сітку;

· гіперкуб (hypercube) – дана топологія представляє окремий випадок структури решітки, коли по кожній розмірності сітки є тільки два процесори.

 

Хід роботи:

1. В залежності від варіанта, зобразите графічно задану структуру комп'ютерної системи.

При зображені гіперкуба, необхідно пам’ятати, що два процесори мають з'єднання, якщо двійкове подання їхніх номерів має тільки один позицію, що різниться, також в N-мірному гіперкубі кожний процесор зв'язаний рівно з N сусідами, N-мірний гіперкуб може бути розділений на два (N-1)- мірних гіперкуба і усього можливо N різних таких розбивок. Найкоротший шлях між двома будь-якими процесорами має довжину, що збігається з кількістю бітових значень у номерах процесорів.

Таблиця 3.1

Таблиця індивідуального завдання для виконання роботи

№ варіанта Структура комп’ютерної системи
  Повний граф з 12 вузлами.
  Гіперкуб, де N=4.
  Гіперкуб, де N=5.
  Гіперкуб, де N=8.
  Гіперкуб, де N=3.
  Повний граф з 16 вузлами.
  Гіперкуб, де N=7
  Решітка, з 16 вузлами.
  Гіперкуб, де N=6
  Гіперкуб, де N=7
  Повний граф з 12 вузлами.
  Решітка, з 12 вузлами.

 

Контрольні запитання:

1. Перелічите відомі вам структури комп'ютерних систем

2. Які властивості має решітка з регулярними зв'язками?

3. У чому перевага й недоліки структури гіперкуб?

4. Яка структура, на вашу думку, є надійнішою? Поясніть чому.

5. Скільки вузлів містить у собі структура 6N куб?

6. У якій структурі адресація процесорів і відповідно, блоків розподіленої пам'яті, ставиться в залежність від структури зв'язків між ними?

7. Яку простішу систему можливо легко отримати, із структури гіперкуб, де N=3?

8. Які властивості має структура гіперкуб?

9. У яких структурах, відомих вам, передбачається використання розподіленої пам’яті?

Лабораторна робота №4. Вивчення принципу роботи конвеєрних комп’ютерних систем.

Мета роботи: Вивчити принципи побудови та роботи конвеєрних комп’ютерних систем

 

Теоретичні відомості:

Класифікація Хендлера.

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

Запропонована класифікація базується на відмінності між трьома рівнями обробки даних в процесі виконання програм:

· рівень виконання програми - спираючись на лічильник команд і деякі інші регістри, пристрій управління (ПУ) проводить вибірку і дешифрування команд програми;

· рівень виконання команд - арифметико-логічний пристрій комп'ютера (АЛП) виконує команду, видану йому пристроєм управління;

· рівень бітової обробки - всі елементарні логічні схеми процесора (ЕЛС) розбиваються на групи, необхідні для rвиконання операцій над одним двійковим розрядом.

Таким чином, подібна схема виділення рівнів припускає, що обчислювальна система включає якесь число процесорів кожен з своїм пристроєм управління. Кожен пристрій управління пов'язаний з декількома арифметико-логічними пристроями, виконуючими одну і ту ж операцію в кожен конкретний момент часу. Потім, кожний АЛП об'єднує декілька елементарних логічних схем, що асоціюються з обробкою одного двійкового розряду, число ЕЛС є довжина машинного слова. Якщо на якийсь час не розглядати можливість конвейєризації, то число пристроїв управління до, число арифметико-логічних пристроїв d в кожному пристрої управління і число елементарних логічних схем w в кожному АЛП складуть трійку для опису даної обчислювальної системи C:

t(C) = (k, d, w)

У таких позначеннях опису деяких добре відомих обчислювальних систем виглядатимуть таким чином:

t(MINIMA) = (1,1,1);

t(IBM 701) = (1,1,36);

t(SOLOMON) = (1,1024,1);

t(ILLIAC IV) = (1,64,64);

t(STARAN) = (1,8192,1) - у повній конфігурації;

t(C.mmp) = (16,1,16) - основний режим роботи;

t(PRIME) = (5,1,16);

t(BBN Butterfly GP1000) = (256,~1,~32).

Не дивлячись на те, що перерахованим системам властивий паралелізм різного роду, він може бути віднесений до одного з трьох виділених рівнів.

Розширивши можливості опису, допускається можливість конвеєрної обробки на кожному з рівнів. Конвеєрність на самому нижньому рівні, на рівні ЕЛС, це конвеєрність функціональних пристроїв. Якщо функціональний пристрій обробляє w-розрядні слова на кожному з w' ступенів конвеєра, то для характеристики паралелізму даного рівня розглядається w×w'. Знак множення × використовується на кожному рівні щоб відокремити число, що представляє ступінь паралелізму, від числа ступенів в конвеєрі. Комп'ютер TI ASC має чотири конвеєрні пристрої по вісім ступенів в кожному для обробки 64-х розрядних слів, отже, він може бути описаний так:

t(TI ASC) = (1,4,64×8)

t(CDC 6600) = (1,1×10,~64)

описаний тільки центральний процесор без урахування підсистем, що управляють і периферійних.

Конвеєризація на самому верхньому рівні, відома як макро-конвеєр. Потік даних, проходячи через один процесор, поступає на вхід іншому, можливо через деяку буферну пам'ять. Якщо незалежно працюють n процесорів, то в ідеальній ситуації за відсутності конфліктів і повної збалансованості отримуємо прискорення в n разів в порівнянні з використанням тільки одного процесора. Так комп'ютер PEPE, маючи фактично три незалежні системи з 288-ми пристроїв, описується таким чином:

t(PEPE) = (1×3,288,32)

Після розширення трирівневої моделі паралелізму засобами опису потенційних можливостей конвейєризації кожна трійка

t(PEPE) = (k×k',d×d',w×w')

інтерпретується так:

· k - число процесорів, кожен зі своїм ПУ, що працюють паралельно;

· k' - глибина макроконвеєра з окремих процесорів;

· d - число АЛП в кожному процесорі, що працюють паралельно;

· d' - число функціональних пристроїв АЛП у цепі;

· w - число розрядів в слові, що обробляються в АЛП;

· w' - число ступенів в конвеєрі функціональних пристроїв АЛП.

На додаток до викладеного способу опису архітектури Хендлер пропонує використовувати три операції, що дозволять описати:

· складні структури з підсистемами введення-виведення, хост-комп’ютером або якимись іншими особливостями;

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

Перша операція (×) в якомусь сенсі відображає конвеєрний принцип обробки і припускає послідовне проходження даних спочатку через перший її аргумент-підсистему, а потім через другий. Опис комп'ютера CDC 6600 можна уточнити таким чином:

t(CDC 6600) = (10,1,12) × (1,1×10,64),

де перший аргумент відображає існування десяти 12-ти розрядних периферійних процесорів і той факт, що будь-яка програма повинна спочатку бути оброблена одним з них і лише після цього передана центральному процесору для виконання. Аналогічно можна отримати опис машини PEPE, приймаючи до уваги, що як хост-комп’ютера вона використовує CDC 7600:

t(PEPE) = t(CDC 7600) × (1×3, 288, 32) = = (15, 1, 12) × (1, 1×9, 60) × (1×3, 288, 32)

Потік даних послідовно проходить через три підсистеми, що відображено, при з'єднанні їх знаком «×».

Щоб внести велику ясність, для складних операції конвеєрного виконання, Хендлер вводить операцію паралельного виконання (+), що фіксує можливість незалежного використання процесорів різними завданнями:

t(n,d,w) = [{(1,d,w) +... + (1,d,w)] {n раз}

У разі CDC 7600 уточнений запис вигляду:

(15,1,12) × (1,1×9,60) = [(1, 1, 12) + … +(1,1,12)]} {15 раз} × (1, 1×9, 60)

говорить про те, що кожне завдання може захопити свій периферійний процесор, а потім одна за однією вони поступатимуть в центральний процесор. Третя операція - операція альтернативи (V), показує можливі альтернативні режими функціонування обчислювальної системи. Чим більше для системи таких режимів, тим більше гнучкою архітектурою, на думку Хендлера, вона володіє. Наприклад, комп'ютер C.mmp може бути запрограмований для використання в трьох принципово різних режимах:

t(C.mmp) = (16, 1, 16) V (1×16, 1,1 6) V (1, 16, 16).

Максимальна пропускна спроможність конвеєрної машини досягається при обробці довгих векторів, оскільки тільки в цьому випадку частка часу, що витрачається на початковому етапі завантаження параметрів, реконфігурація, очікування першого результату, виявляється максимальною. Отже, пропускна спроможність R як функція довжини вектора l визначається виразом (4.1):

(4.1)

де ts - час проходження однієї стадії конвеєра, tstart - стартовий час конвеєра.

Типовими для сучасних СуперЕОМ є наступні цифри: tstart=1000нс, ts = 15нс. З графіка цієї функції, приведеного на малюнок 4.1, видно, що при малих довжинах векторів пропускна спроможність може бути значно нижче максимальною. Таким чином, необхідно прагнути до того, щоб довжина векторів була можливо більшою, а стартовий час меншим.

Рис. 4.1 Пропускна спроможність, як функція довжини вектора

 

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

(4.2)

де r - введене раніше відношення максимальних пропускних спроможностей при векторному і скалярних режимах відповідно. Звідси знайдемо наближену порогову довжину вектора:

(4.3)

де tscalar - час виконання скалярних операцій.

 

Хід роботи:

 

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

На практиці, за допомогою системи Paralab, змоделюйте паралельне виконання задач, за допомогою незалежного використання процесорів.

Таблиця 4.1

Таблиця індивідуального завдання для виконання роботи

№ варіанта ts, нс tstart, нс
     
     
     
     
     
     
     
     
     
     
     
    600

Контрольні запитання:

1. Яким чином Хендлер, класифікує комп’ютерні системи?

2. Опишіть можливості конвеєризації.

3. Приведіть приклад СуперЕОМ, з конвеєрною обробкою команд.

4. Яким чином досягається максимальна пропускна спроможність конвеєрної машини?

5. Опишіть конвеєрну обробку, її ступень, дліну конвеєра, та конвеєр команд.

6. Опишіть конвеєр даних, простій конвеєра, конфлікти, що приводить до простою.

7. Від чого залежить ефективність векторної та скалярної обробки?

8. Поясніть принцип операції паралельного виконання.

9. Опишіть комп'ютер TI ASC має чотири конвеєрні пристрої по вісім ступенів в кожному для обробки 64-х розрядних слів, по Хендлеру.

10. На що впливає стартовий час у конвеєрних систем?



Поделиться:


Последнее изменение этой страницы: 2017-02-10; просмотров: 156; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.171.180 (0.023 с.)