SMP-системи
У п’ятому пункті проявляються найбільш важливі відмінності SMP-систем від кластерних систем, у яких взаємодія між компонентами здійснюється, як правило, на рівні окремих повідомлень або повних файлів. В SMP-системах можливий обмін інформацією між компонентами і на рівні окремих елементів даних і, таким чином, можна організувати більш тісну взаємодію між процесорами. Прикладом SMP-систем на базі… Читати ще >
SMP-системи (реферат, курсова, диплом, контрольна)
SMP-системи
Симетрична мультипроцесорна система (SMP — symmetrical multiprocessor) складається з кількох однакових процесорів, зв’язаних в єдину обчислювальну машину за допомогою магістралі, або яким-небудь іншим способом.
Для SMP-систем характерні наступні ознаки:
1. Наявність двох і більше однакових, або близьких по по характеристиках процесорів.
2. Процесори мають доступ до спільної пам’яті, до якої вони підєднані через загальну системну магістраль, або за допомогою іншого механізму забезпечення взаємодії, але в любому випадку час доступу до ресурсів пам’яті любого процесора приблизно одинаковий.
3. Процесори мають доступ до спільних засобів вводу/виводу або через один і той же канал, або через розділені канали.
4. Всі процесори здатні виконувати одинаковий набір функцій (звідси і визначення симетрична система).
5. Весь комплекс управляється загальною операційною системою, яка забезпечує взаємодію між процесорами і програмами на рівні завдань, файлів і елементів даних.
У п’ятому пункті проявляються найбільш важливі відмінності SMP-систем від кластерних систем, у яких взаємодія між компонентами здійснюється, як правило, на рівні окремих повідомлень або повних файлів. В SMP-системах можливий обмін інформацією між компонентами і на рівні окремих елементів даних і, таким чином, можна організувати більш тісну взаємодію між процесорами.
В SMP-системі розподіл процесів або потоків задач між окремими процесорами покладається на операційну систему.
Найбільш суттєві переваги SMP-систем над однопроцесорними:
§ Підвищення продуктивності. Якщо окремі прикладні задачі можуть виконуватись паралельно, система з багатьма процесорами буде процювати швидше, ніж система з одним процесором того ж типу.
§ Надійність. Оскільки всі процесори SMP-системи однотипні і можуть і можуть виконувати одні і ті же задачі, то у випадку відмови одного із них заплановану для нього задачу можна передати іншому процесору. Отже відмова одного із процесорів не приводить до втрати працездатності всієї системи.
§ Можливість функціонального нарощення. Користувач може підвищити продуктивність системи, включивши до її складу додаткові процесори.
§ Виробництво однотипних систем різної продуктивності. Виробник комп’ютерів може запропонувати клієнтам цілий спектр систем з одинаковою архітектурою, але різною ціною і продуктивністю, які відрізняються кількістю процесорів.
Перераховані переваги частіше всього є потенційними і далеко не завжди на практиці їх вдається реалізувати.
Дуже привабливим для користувачів особливістю SMP-систем є її прозорість. Операційна система бере на субе всі турботи по розподілу задач між окремими процесорамиі синхронізації їх роботи.
Структурна організація SMP-систем. На рис. 1 пказана загальна блк-схема мультипроцесорної системи. В складі системи є 2 або більше процесорів, кожний із яких має весь комплект необхідних вузлів — пристрій управління, АЛП, регістри і блок кеша. Кожний процесор має доступ до головної пам’яті системи і пристроїв вводу-виводу через деяку підсистему взаємодії.
Варіанти структурної організації мультипроцесорних систем можна класифікувати наступним чином:
§ Системи з спільною або розділеною в часі магістраллю;
§ Системи з багатопортовою пам'ятю;
§ Системи з центральним пристоєм управління.
Рис. 1. Загальна блок-схема мультипрцесорної системи
симетрична мультипроцесорна система Процесори можуть обмінюватись даними і повідомленнями через головну пам’ять. Для цього в ній виділена окрема область зв’язку. Крім того, в системі може підтримуватись і можливість безпосереднього обміну сигналами між окремими проіесорами.
Часто загальна пам’ять організована таким чином, що процесори можуть одночасно звертатись до її різних блоків. В деяких варіантах систем процесори володіють блоками локальної пам’яті і власними каналами вводу-виводу крім ресурсів загального призначення.
Системи з спільною магістраллю. Використання спільної магістралі в режимі розділення часу — це самий простий спосіб організації сумісної роботи процесорів в SMP-системі. Структура магістралі і інтерфейс практично ті ж, що і в однопроцесорній системі. В складі магістралі є лінії даних, адрес і управляючих сигналів.
Для спрощення роботи механізму прямого доступу до пам’яті з сторони модулів вводу-виводу приймаються наступні міри:
§ Адресація. Організовується таким чином, що по коду адреси можна розрізняти модулі при визначенні джерел і приймачів даних.
§ Арбітраж. Любий модуль вводу-виводу може тимчасово стати задатчиком магістралі. Арбітр з допомогою деякого механізму пріоритетів забезпечує рішення конфліктів при почві конкуруючих запитів на управління магістраллю.
§ Розділення часу. Коли один із модулів отримує право управління магістраллю, інші модулі блокуються і повинні, якщо в цьому є необхідність, припинити виконання операцій і чекати, поки їм не буде наданий доступ до магістралі.
Функції, звичні для одно процесорних систем, можна без особливих змін використовувати і в мультипроцесорній системі. Основні відмінності в тому, що в боротьбі за право доступу до блоку пам’яті приймають участь не тільки модулі вводу-виводу, але і процесори.
Магістральна структура зв’язків має кілька переваг в порівнянні з іншими підходами до реалізації підсистеми взаємодії:
§ Простота. Цей варіант найбільш простий, оскільки фізичний інтерфейс, схема адресації, механізм арбіиражу і логіка розподілу ресурсів магістралі залишаються, по суті, такими самими, як і в однопроцесорній системі.
§ Гнучкість. Система з магістральною організацією зв’язків досить просто переконфігуровується, добавивши до неє нові процесори.
§ Надійність. Магістраль є пасивним середовищем, і відмова любого підключеного до неї пристрою не приводить до втрати працездатності системи в цілому.
Основний недолік системи із загальною магістраллю — обмежена продуктивність. Всі операції доступу до головної пам’яті повинні проходити по єдиному шляху — через загальну магістраль і, як наслідок, швидкодія системи обмежена тривалістю циклу магістралі.
Рис. 2 Організація SMP-системи із спільною магістраллю
Частково з цією проблемою дозволяє справитись кеш-пам'ять. В результаті впровадження кеша зменшується кількість звернень до головної пам’яті. Як правило, застосовується дворівнева організація кеша — кеш рівня L1 розміщений у мікросхемі процесора (внутрішній кеш), кеш рівня L2 — зовнішній.
Системи з багатопортовою пам’ятю. Використання в SMP-системах багатопортової пам’яті дозволяє організувати пряме звернення кожного процесора і модуля вводу-виводу до загального масиву інформації, незалежно від всіх інших. При цьому кожний модуль пам’яті повинен бути забезпечений логічною схемою вирішення можливих конфліктів. Для цього частіше всього портам назначаються певні пріоритети.
Системи з центральним пристроєм управління. Центральний пристрій управління організовує розділені потоки даних між незалежними модулями — процесорами, пам’ятю і модулями вводу-виводу. Контролер може запам’ятати запити і виконувати функції арбітра і розподілювача ресурсів. На нього також покладаються функції передачі інформації про стан, керуючих повідомлень і повідомлення процесорів про зміну інформації в кешах.
Оскільки всі логічні функції, зв’язані з координацією роботи компонентів системи, реалізуються в одному центральному пристрої управління, інтерфейси процесорів, пам’яті і модулів вводу-виводу, залишаються практично незмінними. Це забезпечує системі майже таку ж гнучкість і простоту, як і при використанні спільної магістралі. Основний недолік такого підходу — суттєве ускладнення пристрою управління, що може привести до зниження продуктивності системи.
Структура з центральним пристроєм управління в свій час була широко поширена при побудові многопроцесорних обчислювальних комплаксів на базі великих машин, таких як серія IBM S/370.
Особливості операційних систем мультипроцесорних комплексів. У мультипроцесорному обчислювальному комплексі операційна система повинна таким чином розподіляти роботу між процесорами і іншими ресурсами, щоб користувач був позбавлений від необхідності самостійно контролювати ресурси. З точки зору користувача такий комплекс повинен виглядіти як єдина мультипрограмна система з одним процесором. І в однопроцесорній і в SMP-системі в кожний момент часу можуть бути активними кілька завдань і процесів, і функція операційної системи полягає в тому, щоб спланувати виконання завдань і розподілити між ними необхідні ресурси.
Користувач може спроектувати свою задачу так, що вона буде включати багато процесів чи потоків в межах окремого процесу і при цьому ніяк на враховувати, чи буде ця задача виконуватись в однопроцесорній чи SMP-системі. Отже операційна система повинна володіти всіма усіма функціями мультипрограмної системи, а також можливістю забезпечити роботою множину процесорів.
Виділимо наступні ключові питання, які повинні враховуватись при проектуванні операційних систем багатопроцесорного комплексу:
SMP-системи на базі великих обчислювальних машин. У більшості SMP-систем персонального використання і робочих станцій для організації взеємодії між комп’ютерами використовується системна магістраль.
Прикладом SMP-систем на базі великих комп’ютерів може служити сімейство IBM S/390. В сімейство входять компютери різних класів — від однопроцесорних з єдиною платою головної пам’яті до високпродуктивних систем з десятком процесорів і чотирьма блоками головної пам’яті. В конфігурацію також включені додаткові процесори, які виконують функції модулів вводу-виводу.
Основні компоненти обчислювальних комплексів на базі IBM S/390:
§ Процесор П — CISC-мікропроцесор, у якому управління обробкою найбільш часто використовуваних команд реалізовано апаратно, а інші команди виконуються за допомогою мікропрограм. До складу ВІС кожного ПР входить кеш рівня L1 об'ємом 64Кбайт, в якому зберігаються і команди і дані.
§ Кеш рівня L2 об'ємом 386 Кбайт.
§ Адаптер переключення магістралі - BSN (bus-switching network adapters), який організовує зв’язок блоків кеша L2 з ідним із чотирьох блоків головної памяті. До складу BSN входить і кеш рівня L3 об'ємом 2 Мбайти.
§ Одноплатний блок головної памяті об'ємом 8 Гбайт. До складу комплексу входить 4 таких блоки, забезпечуючи об'єм головної пам’яті 32 Гбайти.