Учебное пособие: Мікропроцесорні системи
Останнім часом набули поширення багатопроцесорні комп'ютери, тобто комп'ютери, які містять кілька процесорів.
Функціонування багатопроцесорної системи потребує виконання таких умов:
- материнська плата має підтримувати кілька процесорів, тобто мати додаткові розніми для установлення процесорів і відповідний набір мікросхем;
- процесор має працювати в багатопроцесорній системі;
- операційна система має підтримувати декілька процесорів (такими операційними
системами є Windows NT/XP і Unix).
Багатопроцесорна система найбільш ефективна у випадках, коли вона використовується багатозадачними операційними системами і прикладними програмами, створеними за допомогою спеціальних засобів, що дозволяють виконувати паралельне оброблення даних.
У процесі одночасної роботи декількох процесорів операційна система розподіляє різні задачі між процесорами. Існують два режими роботи багатопроцесорних систем -- асиметричний і симетричний.
У режимі асиметричного оброблення один процесор виконує тільки задачі операційної системи, а решта процесорів реалізовують прикладні програми.
У режимі симетричного мультиоброблення -- SMP (Symmetric Multi-Processing) задачі операційної системи і прикладні задачі користувача може виконувати будь-який процесор залежно від його завантаження. Цей режим більш продуктивний і тому його використовують для більшості багатопроцесорних систем.
Сучасні універсальні МП можуть одночасно виконувати кілька команд. Оскільки звернення до оперативної пам'яті і пристроїв виконується значно повільніше, ніж команди, процесор може простоювати під час таких звернень. Однак усі сучасні операційні системи працюють у багатозадачному режимі, тому на процесор можна спрямовувати не один, а кілька потоків команд від різних розв'язуваних одночасно задач. Такий режим реалізовано в останніх процесорах Pentium IV, Xeon та Itanium фірми Intel за допомогою гіперпотокової технології НТ (Hyper-Threading Technology). Процесор, що підтримує цю технологію, виявляється для операційної системи як два віртуальні процесори і тому може обробляти два рівнобіжні потоки даних. У цьому разі, за оцінками фірми Intel, продуктивність комп'ютера може підвищитися до 25 %. Реалізація гіперпотокової технології забезпечується не лише підтриманням цієї технології самим процесором, але й набором мікросхем і BIOS материнської плати та операційною системою багатопроцесорного режиму роботи.
Поняття про с уперкомп'ютери
С уперкомп'ютери зорієнтовано на досягнення надвисоких швидкостей оброблення інформації, підвищення надійності та живучості обчислювальних систем. Вони містять кілька десятків чи сотень порівняно простих (елементарних) процесорів.
Підвищення надійності, живучості та завадостійкості суперкомп'ютерів, а тепер і інших типів комп'ютерів, досягається введенням надлишкового устаткування і забезпеченням у разі відмов устаткування автоматичної реконфігурації системи для зберігання життєво важливих функцій (можливо ціною втрати другорядних).
Натепер існують дві структури побудови великих багатопроцесорних систем високої продуктивності: матрична структура (рис.2) і структура з конвеєрним обробленням команд (рис.1, була розглянута у попередньому навчальному питанні).
Комп'ютери, реалізовані з використанням матричної структури , містять деяку кількість однакових порівняно простих швидкодіючих процесорів (трансп’ютерів ), з'єднаних між собою та пам'яттю так, що утворюється сітка (матриця), у вузлах якої розміщаються процесори. Система містить кілька потоків даних і один загальний потік команд, тобто всі процесори виконують одночасно одну й ту саму команду (допускається пропуск команд в окремих процесорах), але з різними операндами, що доставляються процесорам з пам'яті декількома потоками даних (SIMD – архітектура).
Основні принципи побудови завадостійких комп'ютерів такі:
—багато однотипних пристроїв (система має містити декілька примірників однотипних пристроїв: процесорів, модулів оперативної пам'яті, контролерів і т. ін.);
—загальні поля процесорів, оперативної пам'яті, каналів (шин) і периферійних пристроїв;
—динамічний розподіл функцій між однотипними пристроями (заздалегідь не відомо, який з однотипних пристроїв буде виконувати цю функцію і, більше того, роботу можна почати на одному, продовжувати на другому і закінчувати на третьому пристрої);
Рис. 2. Оброблення даних у обчислювальної системі матричної ( SIMD ) архітектури.
—автоматичний контроль правильності виконання операцій (усі операції, наприкладобчислення в процесорі, виконуються на двох чи декількох пристроях і в разі розбіжності результатів операція повторюється і (чи) викликається програма автоматичної діагностики);
—динамічна реконфігурація (можливість замінювати устаткування чи модулі програмного забезпечення, що відмовили, без перерви в роботі справної частини устаткування і програмного забезпечення).
Наявність загальних полів пристроїв і динамічного розподілу функцій дозволяє комплексу зберігати працездатність доти, доки залишається хоча б один справний пристрій кожного типу.
Суперкомп'ютери використовуються для розв'язання особливо складних науково-технічних задач, оброблення великих обсягів даних у реальному масштабі часу, моделювання складних систем, автоматизованого проектування складних об'єктів, а також у системах керування (промислових і військових).
Макет найпотужнішого суперкомп'ютера ES (Earth Simulator) Центра моделювання Землі (Earth Simulator Center) у Йокогамі (Японія) показаний рис. 3.
Цей суперкомп'ютер містить такі основні компоненти:
- 640 процесорних вузлів (PN -- Processor Node), кожний з яких містить 8 суперскалярних процесорів NEC , частота яких 500 МГц. Процесор містить векторний блок з 72 векторних регістрів (кожний з регістрів має 256 векторних елементів) і використовується для виконання конвеєрних операцій для чисел із плаваючою комою;
- систему дискової пам'яті загальною ємністю 250 000 Гбайт (250 Тбайт) (до кожного процесорного вузла підключено 16 Гбайт розподіленої дискової пам'яті);
- 64 вузли мережі зв'язку (IN - - Interconnection Node) між процесорами зі швидкістю обміну 12,3 Гбайт/с;
- архівну бібліотеку стрічкових картриджів (CTL - - Cartridge Type Library) загальною ємністю 1,5 Пбайт (1 500 Тбайт).