Велика бібліотека української літератури
Популярные материалы
» » Огляд компютерних систем

Огляд компютерних систем

Содержание
Функціонально розподілені системи
Паралельні комп’ютери
Продуктивність паралельних комп’ютерів
Методи розподілення доступу до спільної пам’яті в багатопроцесорних системах
Системи з розподіленою пам’яттю
Класичні матричні системи
Архітектура NUMA
Використання в комп’ютерах Cray T3D/T3D. Система „Еврика"
Обчислювальні кластери
Комунікаційні середовища кластерних систем
Метакомп’ютери
Класифікація Флінна та Хонні. Класи обчислювальних систем
Класифікація Флінна
Пам’ять з чергуванням адрес
Асоціативна пам’ять (безадресна пам’ять)
Обчислювальні системи з структурою, що перебудовується
Трансп’ютери
Функціонально розподілені системи
В ЕОМ перших трьох поколінь всі обчислювальні функції реалізовувались одним процесором і інтерпретувалися ним, як арифметичні та логічні операції. Висока продуктивність системи утворилась на основі багатопроцесорних комплексів.
Використання в таких комплексах однотипних процесорів є економічно невигідним, оскільки в кожному процесорі використовується лише та частина ресурсів, яка необхідна для виконання певної операції в певний момент часу. Найбільш економічний спосіб побудови багатопроцесорних систем - це використання спеціалізованих процесорів, орієнтованих на реалізацію певних функцій: обробка скалярних величин, текстів, матрична обробка, ввід-вивід даних.
Система складається із сукупності процесорів, що мають індивідуальну та основну пам’ять.
Ядро системи забезпечує інформаційне спряження усіх пристроїв. Воно може бути реалізоване у вигляді системної шини комутаційного поля або комутатора основної пам’яті. Управляючий процесор виконує супервізорні функції, обробляючий - обробку числових і символьних даних, матричний - матричну і векторну обробку.
Склад процесора конкретної системи залежить від складу конкретної задачі. Обробка кожної задачі розподіляється між процесорами. Різні кроки завдань, програми і гілки програм виконуються обробляючим, матричним і мовним процесорами. Розподіл задач здійснюється управляючим процесором.
Паралельні комп’ютери
За останній час архітектура паралельних комп’ютерів зросла досить великими темпами. В даний час налічується дуже багато архітектурних рішень, проте всіх їх можна поділити на два класи:
1. Комп’ютери з спільною пам’яттю (мультипроцесорні системи). В даних комп’ютерах декілька процесорів мають доступ до спільної оперативної пам’яті одночасно. Всі процесори працюють в одному адресному просторі.
2. Комп’ютери з розподіленою пам’яттю. Складаються з декількох ЕОМ, кожна з яких має свою власну оперативну пам'ять, окрему операційну систему, свої пристрої введення / виведення. Об’єднання цих комп’ютерів відбувається через єдине комутаційне середовище.
Векторно-конвеєрні комп’ютери
Класичним прикладом комп’ютерів даного типу є комп’ютери Cray C90, що був випущений на початку 90-х років. Даний комп’ютер містить 16 рівноцінних процесорів, з часом такту 4,1нс, тобто тактова частота складає 250 МГц. Всі процесори однакові, як по характеристиках, так і по відношенню по розділенню ресурсів.
Структура ОЗП.
Кожне слово в пам’яті складається з 80 біт, 64 з них - біти даних, 16 біт - для корекції помилок. Для реалізації паралельного доступу вся пам'ять розбита на банки. При максимальній конфігурації вся пам'ять розбивається на 1024 банки, які в свою чергу об’єднуються в секції та підсекції. Кожна з восьми секцій включає в себе 8 підсекцій, кожна з яких включає 64 банки. При одночасному зверненні до однієї підсекції, конфлікт вони вирішують за 6 тактів. Якщо вибірка відбувається з кроком, то час вирішення конфлікта збільшується із збільшенням значення стеку. Кожен процесор має доступ до ОЗП через чотири порти, що працюють зі швидкістю два слова за такт. З цих чотирьох портів обов’язково один виділяється для операції вводу/виводу. Ще один обов’язково виділяється для проведення запису.

Секція вводу виводу.
Підтримує три типи каналів для роботи із зовнішніми пристроями:
1. Low-speed channels (LOSP) 6 Мбіт/с
2. High-speed channels (HISP) 200Мбіт/с
3. Very high-speed channels (VHISP) 1800 Мбіт/с
Секція міжпроцесорної взаємодії.
Основне завдання - це передача даних та керуючої інформації між процесорами та синхронізація їх взаємної роботи. Містить розділені регістри та семафори, які об’єднуються в групи, що називаються кластерами. Кожен кластер містить вісім 32-розрядних регістрів, вісім 64-розрядних регістра і 32 однобітних семафори. Кількість кластерів визначається конфігурацією комп’ютера.
Регістрова структура процесора.
Так як всі процесори даного комп’ютера є однакові, то розглянемо структуру одного процесора. Кожен процесор вміє обробляти три типи даних:
адреси
скаляри
вектори.
Кожен процесор має набір основних та проміжних регістрів. До основних відносяться: А-регістри, що призначені для роботи з адресами, S-регістри, що призначені для роботи із скалярними даними. Проміжні регістри В та Т, призначені для запису проміжних результатів обміну процесора з пам’яттю. Адресні регістри містять вісім регістрів у основному наборі та 64 в проміжному. Всі регістри 64-розрядні і призначені для виконання скалярних операцій. Кожен з векторних регістрів містить 128 64-розрядних елементів. Призначені для збереження елементів вектора. Кількість таких регістрів - 8. для виконання векторних операцій є два додаткових регістра - 8-розрядний VL, в якому зберігається довжина вектора та регістр 128-бітний VM - регістр маски. Якщо і-тий розряд даного регістра рівний 1, то процесор буде виконувати операції над і-тим елементом вектора.
Продуктивність паралельних комп’ютерів
Необхідність оцінювання продуктивності комп’ютерів виникла з початку їх виникнення. Основна задача оцінювання - знайти оптимальний критерій для визначення ефективності роботи, що буде універсальним для вибору комп’ютера.
Однією з одиниць оцінки продуктивності є пікова продуктивність, тобто кількість операцій, що виконує комп’ютер у найбільш сприятливих умовах (конвеєри заповнені, дані в регістрах, немає конфліктів з пам’яттю). Проте пікова продуктивність - це лише теоретичний показник. На одних задачах продуктивність може досягати до пікової продуктивності, а на інших задачах буде досягати лише 2% пікової продуктивності.
Користувача цікавить, наскільки продуктивно комп’ютер буде працювати на його програмах, тому показник пікової продуктивності не є універсальним при виборі комп’ютера.
Ще один спосіб оцінки продуктивності - це обрахунок кількості операцій за секунду. Вимірюється в МІРS-ах. Для визначення цього показника достатньо порахувати кількість операцій процесора за одиницю часу. Цей показник також не є універсальним, так як кожний процесор має свій власний набір інструкцій і програма користувача може на різних процесорах утворювати різну кількість операцій. Наприклад, операція а+b на процесорах Intel буде потребувати 3 мікрооперації, 2 з яких - зчитування значень з пам’яті, а третя - безпосередньо додавання. На інших процесорах ця операція може мати іншу кількість мікрооперацій.
Інший приклад - комп’ютер ILLIAC IV. Продуктивність комп’ютера - 10 мільярдів операцій/с. проте продуктивність досягалась тільки при роботі з даними розмірності "байт". На більших розмінностях продуктивність різко падала. Ще один недолік використання даного показника - це неможливість точного вимірювання продуктивності з використанням співпроцесора. Якщо співпроцесор існує, то всі операції з плаваючою комою покладаються на нього, тобто головний процесор виконує меншу кількість операцій. Якщо ж співпроцесора немає, то головний процесор регулює його роботу, тобто починає виконувати велику кількість операцій для виконання дій з плаваючою комою, тобто фактично кількість збільшується. Виникає протиріччя: з використанням співпроцесора кількість інструкцій зменшується, а отже, продуктивність зменшується, проте операції з плаваючою комою виконуються швидко; а коли співпроцесора немає, кількість інструкцій за секунду велика, а отже, продуктивність велика, проте реально операції над числами з плаваючою комою виконуються повільніше.
Отже, при оцінці продуктивності комп’ютерних систем не варто користуватися лише апаратними показниками, потрібно також враховувати програмно-апаратне середовище. На основі деяких критеріїв формуються еталонні тестові програми, які при запуску на кожній комп’ютерній системі показують продуктивність даної системи. Ці програми називають benchmark.
Однією з найпопулярніших тестових програм є тест LINPACK, який для тестового завдання розв’язує систему рівнянь із щільною матрицею. Спочатку в цьому тесті розв’язується система із ста рівнянь. Проте продуктивність сучасних систем є настільки великою, що дана система рівнянь вирішується надзвичайно швидко і оцінити продуктивність стає неможливо. Тому дана програма поставляється з відкритим кодом і кожен користувач може змінювати розмірність матриці.
Також існує ще ряд тестових програм, наприклад STREAM для тестування векторних операцій, LFK, PERFECT та багато інших. Проте жоден з цих тестів не покаже реальну продуктивність системи. Тому потрібно проводити комплексне тестування системи, також потрібно чітко розуміти призначення комп’ютерної системи та які задачі вона буде вирішувати.
Системи із спільною пам’яттю
Паралельні ПК із спільною пам’яттю
Комп’ютери даного класу відповідно мають переваги та недоліки.
Переваги:
простота програмування;
спільний адресний простір;
простота роботи;
Недоліки:
невелика кількість процесорів;
дуже велика вартість;
Щоб збільшити кількість процесорів, але при цьому залишити єдиний адресний простір, пропонується декілька архітектур. Найпопулярніша з них - СС VNUMA.
В даній архітектурі фізична пам’ять є фізично розподіленою, але на логічному рівні - це її єдиний адресний простір. Також дана архітектура вирішує проблему когерентності кешів і забезпечує повну сумісність з комп’ютерами SMP.
Приклад архітектури СС VNUMA будемо розглядати на комп’ютері ИP Saperdome. Він випущений в 2000 році. Максимальна конфігурація може включати до 64 процесорів, максимальна кількість оперативної пам’яті - 256Гб, розширення - до 1Тб.
Основу архітектури складають обчислювальні коди, зв’язані між собою ієрархічною системою перемикачів. Кожна комірка - це мультипроцесор, на якому розміщені всі необхідні компоненти. Кожна комірка може містити до 4 процесорів, оперативна пам’ять - до 16Мб.

Центральне місце в комірці займає контролер комірки. Це дуже складний пристрій, який складається з 24 млн транзисторів. Контролер зв’язаний з кожним процесором через окремий порт. Швидкість обміну даних - 2Гбіт/с. Також контролер слідкує за когерентністю кеш - пам’яті процесора. Пам’ять комірки може мати ємність від 2Гб і конструкцію поділено на 2 банки, що зв’язані з контролером комірки через окремі порти з швидкістю передачі інформації - 2Гбіт/с. Система введення/виведення включає в себе PCI - слоти. Окремий порт комірки зв’язаний з комутатором, через який відбувається зв’язок з іншими комірками.
© 2014 - 2019 BigLib.info — это сокращение от Big Library (большая библиотека).
Целью создания этого сайта было сделать украинскую литературу доступной для всех, кто желает ее читать.
Использование любых материалов сайта без согласования с администрацией запрещено.
Обратная связь