Файл: Мельник А. Архітектура комп\'ютера.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 24.12.2021

Просмотров: 6863

Скачиваний: 22

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

24

з'явилося декілька методик вимірювання продуктивності. Вони дозволяють розробникам і користувачам здійснювати вибір між альтернативами на основі кількісних показників. Припустимо, що використано два комп'ютери для виконання тієї ж програми. Якщо перший комп'ютер виконав програму за менший час у порівнянні з другим, можна гово­рити, що перший комп'ютер є швидшим. Час виконання програми включає час роботи процесора, час звернення до дискової пам'яті, час звернення до основної пам'яті, час введення-виведення даних і накладні витрати операційної системи. Оскільки при роботі в мультипрограмному режимі під час очікування введення-виведення для однієї про­грами, процесор може виконувати іншу програму, то система не обов'язково мінімізу­ватиме час виконання даної конкретної програми. Тому вказаний підхід до порівняння комп'ютерів не є досконалим.

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

Важливою та часто вживаною характеристикою є середня кількість тактів синхроні­зації процесора на одну команду СРІ (clock cycles per instruction). При відомій кількості виконуваних команд в програмі ця характеристика дозволяє швидко оцінити час робо­ти процесора, необхідний для виконання заданої програми.

Досконалішою одиницею, яку можна використати для порівняння комп'ютерів, є продуктивність, тобто загальна кількість обчислювальної роботи, яку комп'ютер вико­нує за фіксований часовий інтервал. Якщо час виконання деякої програми позначити че­рез Т, то продуктивність Р комп'ютера можна визначити наступним чином: Р = 1/Т. Годі порівняння двох комп'ютерів X і Y можна виконати за наступними правилами: якщо 1/Тх >1І/Ту тобто Ту > Тх, то комп'ютер X є швидшим. В сучасних комп'ютерах продук­тивність вимірюється в мільйонах операцій за секунду - MIPS. Таким чином, продуктив­ність може бути визначена як зворотна до часу виконання величина, причому швидші комп'ютери при цьому матимуть вищий рейтинг кількості операцій за одиницю часу. Позитивними сторонами кількості операцій за одиницю часу як одиниці оцінки продук­тивності комп'ютера є те, що цю характеристику легко зрозуміти, особливо покупцю, і що швидший комп'ютер характеризується більшим числом операцій за одиницю часу. Проте використання цієї одиниці як метрики для порівняння натрапляє на дві пробле­ми. По-перше, вона залежить від набору команд процесора, що ускладнює порівняння комп'ютерів з різними системами команд. По-друге, навіть на одному і тому ж комп'юте­рі вона змінюється від програми до програми.


Вимірювання продуктивності комп'ютерів при вирішенні науково-технічних задач, в яких переважно використовується представлення даних в форматі з рухомою комою, завжди викликало особливий інтерес. Саме для таких обчислень вперше постало пи­тання про вимірювання продуктивності, а за досягнутими показниками часто робилися висновки про загальний рівень розробок комп'ютерів. Зазвичай для науково-технічних завдань продуктивність комп'ютера оцінюється в кількості операцій з рухомою комою за секунду FLOPS (Floating Point Operations Per Second). В сьогоднішніх комп'ютерах це мільйони та мільярди операцій з рухомою комою за секунду - MFLOPS, GFLOPS.


25

Погрібно відзначити, що вищеназвані одиниці вимірювання - такт (або частота) синхронізації, середня кількість тактів на команду і продуктивність комп'ютера є вза­ємозв'язаними. Неможливо змінити жодну з них ізольовано від іншої, оскільки базові иехнології, використовувані для зміни кожної з цих характеристик, взаємозв'язані: час­тота синхронізації визначається технологією виготовлення апаратних засобів і функ­ціональною організацією процесора; середня кількість тактів на команду залежить від Функціональної організації і архітектури системи команд; а кількість виконуваних в програмі команд визначається архітектурою системи команд і технологією компілято­рів. Коли порівнюються два комп'ютери, необхідно розглядати всі три компоненти, щоб зрозуміти відносну продуктивність.

1.2.3.2. Тестові програми для оцінки продуктивності

Важливість створення пакетів тестів, що базуються на реальних прикладних про­грамах широкого кола користувачів і забезпечують ефективну оцінку продуктивності комп'ютерів, була усвідомлена більшістю найбільших виробників комп'ютерних засобів, які в 1988 році заснували неприбуткову корпорацію SPEC (Standard Performance Evalu­ation Corporation). Основною метою цієї організації є розробка і підтримка стандарти­зованого набору спеціально підібраних на основі досвіду тестових програм для оцінки продуктивності новітніх поколінь високопродуктивних комп'ютерів.

Основним результатом роботи SPEC є набори тестів. Ці набори розробляються SPEC з використанням кодів, що поступають з різних джерел. SPEC працює над встановлен­ням цих кодів на різні платформи, а також створює інструментальні засоби для форму­вання з цих кодів осмислених робочих навантажень. В даний час є два базові набори тестів SPEC, що орієнтовані на інтенсизні розрахунки і вимірюють продуктивність про­цесора, пам'яті, а також ефективність генерації коду компілятором. Набір тестів СІNТ, що вимірює продуктивність процесора при обробці цілих чисел, складається з програм, написаних на мові С і вибраних з різних прикладних областей; теорія дробів, інтерпре­татор мови LISP, розробка логічних схем, пакування текстових файлів, електронні та­блиці і компіляція програм. Набір тестів СЕР, що вимірює продуктивність процесора при обробці чисел з рухомою комою, складається з програм, також вибраних з різних прикладних областей: розробка аналогових схем, моделювання методом Монте-Карло, квантова хімія, оптика, робототехніка, квантова фізика, астрофізика, прогноз погоди і інші наукові та інженерні завдання. Частина програм з цього набору написана на мові С, інша частина - на Фортрані. Результати виконання кожного індивідуального тесту з цих двох наборів виражаються відношенням часу виконання однієї копії тесту на комп'юте­рі, що тестується, до часу її виконання на деякому еталонному комп'ютері.


Іншим підходом до оцінки продуктивності комп'ютерів за допомогою тестів є роз­робка спеціального програмного забезпечення (синтетичних тестів), що дозволяє ство­рювати різні робочі навантаження, відповідно до рівня системи, що тестується, і до вимог щодо її використання. Однією з незалежних організацій, яка здійснює оцінку про­дуктивності комп'ютерних систем за допомогою синтетичних тестів, є. приватна компа­нія AIM Technology, яка була заснована в 1981 році. Компанія розробляє і поставляє про­грамне забезпечення для вимірювання продуктивності систем, а також надає послуги з тестування систем кінцевим користувачам і постачальникам комп'ютерних систем та мереж, які використовують промислові стандартні операційні системи, такі як UNIX і


26

OS/2. Це програмне забезпечення складається з двох основних частин: генератора тесто­вих пакетів і сумішей навантажень прикладних завдань. При кожному запуску генера­тора можуть виконуватися будь-які окремі або всі доступні тести у будь-якому порядку і при будь-якій кількості проходжень, дозволяючи тим самим створювати для системи практично довільне робоче навантаження. Якщо деякі необхідні тести відсутні у складі генератора тестових пакетів, то вони можуть бути туди легко додані. На основі оцінки продуктивності системи вибираються різні рівні збільшення навантаження. Це дозволяє з достатньою достовірністю зробити висновок про можливості роботи системи при да­ному навантаженні або при зміні навантаження. При цьому важливим є підбір сумішей навантажень, які ділять на дві категорії: замовлені і стандартні. Замовлені суміші ство­рюють для точного моделювання особливостей середовища кінцевого користувача або постачальника устаткування. Стандартні суміші є звичайним середовищем прикладних завдань. До їх складу входять, зокрема, суміші для робочих станцій, геоінформаційних систем, ділових застосувань, керування базою даних та інші.

Важливим є створення тестів та оцінка продуктивності комп'ютерів на задачах з області їх конкретного застосування. Так, наприклад, фірма BDTI надає послуги з пи­тань аналізу продуктивності комп'ютерів, призначених для вирішення задач цифрової обробки сигналів. З розширенням використання комп'ютерів при обробці транзакцій (комерційний обмін товарами, послугами або грошима) все важливішим стає забезпе­чення можливості їх коректного порівняння між собою. З цією метою в 1988 році була створена Рада для оцінки продуктивності обробки транзакцій (ТРС - Transaction Proces­sing Performance Council), яка є неприбутковою організацією. ТРС публікує специфікації тестових пакетів, які регулюють питання, пов'язані з роботою тестів. Ці специфікації га­рантують, що покупці мають об'єктивні значення даних для порівняння продуктивності різних комп'ютерних систем.

1.2.4. Організація зв'язків між функціональними вузлами комп'ютера

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

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

В двошинній структурі комп'ютера з обміном через процесор (рис. 1.6) введення ін­формації з пристрою введення до основної пам'яті, та виведення інформації з основної пам'яті до пристрою виведення здійснюється через процесор.