You can edit almost every page by Creating an account. Otherwise, see the FAQ.

Високоефективна багатопроцесорна система з розширюваною областю обчислень

Матеріал з EverybodyWiki Bios & Wiki
Перейти до:навігація, пошук

Деякі особливості конструювання високоефективних багатопроцесорних систем[ред.]

Сьогодні істотний інтерес до побудови паралельних багатопроцесорних обчислювальних систем (БОС) визначається застосуванням стандартних загальнодоступних технологій та компонентів . Це зумовлено рядом чинників. Відзначимо основні з них.

По-перше, зростання, відповідно до потреб ринку, продуктивності таких стандартних мережевих технологій як GI (GigabitEthernet), FC (Fibre Channel) та IB (InfiniBand) дозволяє розглядати їх як комунікаційне середовище для багатопроцесорних обчислювальних систем, сконструйованих з використанням архітектури NUMA (Non-Uniform Memory Access ) [1].

По-друге, дуже важливим чинником стало зростання популярності вільно поширюваної операційної системи Linux.

На першому етапі її використання вона позиціонувалась як варіант UNIX для платформ на базі архітектури Intel, але досить швидко з’явилися версії для інших популярних мікропроцесорів, у тому числі й для лідерів за продуктивністю протягом останніх років – мікропроцесорів Alpha. З урахуванням економічних реалій нашої країни використання систем, побудованих на базі стандартних технологій, стає більш ніж актуальним. Причому залежно від особливостей задач і величини бюджету проект системи може мати всілякі варіанти конфігурації. Найбільш доступним можна вважати стандартні материнські плати Core LGA1155 Z77, що містять два вільних слота PCI Express 3.0 8 line на платформі Core i7-4790К 4 ГГц і мережеві адаптери Gigabit Ethernet та FDR InfiniBand, що дозволяє збільшити швидкодію, знизити латентності та зменшити споживання електроенергії мережевими платами.

Вузли кластера об’єднуються між собою за допомогою комутатора GigabitEthernet та InfiniBand, розрахованого на відповідне число портів. Кількість вузлів у системі та їх конфігурація залежить від 44 вимог, що висуваються до обчислювальних ресурсів у вигляді конкретних завдань, і залежать від фінансових можливостей користувачів. Крім того, гостра конкуренція між виробниками комп’ютерної техніки широкого вжитку приводить до того, що ситуація з цінами на ринку комплектувальних елементів змінюється досить динамічно, особливо у зв’язку з випуском виробів нових моделей. Враховуючи також широкий асортимент сучасної електронної продукції, можна з упевненістю констатувати, що при використанні стандартних комплектувальних елементів можлива побудова потужних обчислювальних систем загального призначення у вельми стислі терміни з максимально повним урахуванням потреб і можливостей різних користувачів. З огляду на вищевикладене, відзначимо деякі важливі особливості конструювання багатопроцесорних систем. Сьогодні для побудови суперкомп'ютерів беруться серійні мікропроцесори, забезпечені кожен власною локальної пам'яттю, які з'єднуються за допомогою деякого комунікаційної середовища .

Переважна більшість функціонуючих суперобчислювальних установок − це фактично багатопроцесорні паралельні обчислювальні системи архітектури MPP (Massively Parallel Processing) . Багатопроцесорні обчислювальні системи, сконструйовані на базі локальних мереж, почали називати “кластерними системами” або просто “кластерами”. Це пояснюється тим, що логічно згадана MPP-система мало відрізняється від звичайної локальної мережі. У дисертаційній роботі розглядаються багатопроцесорних систем архітектури “блейд”-серверні рішення, при яких кілька однотипних материнських модулів встановлюються в одному корпусі. Практика показує, що “блейд”-системи більш компактні та зручні в обслуговуванні, а їх реалізація не набагато коштовніше у порівнянні з багатопроцесорними комп'ютерними комплексами. Організація “блейд”-кластера полягає в об'єднанні лез в єдину обчислювальну мережу через комутатор, який встановлений в тому ж корпусі. Для нього може бути досить одного жорсткого диска, на якому знаходиться образ завантажуваної системи, при цьому використовується мережевий механізм завантаження Network boot. При включенні 45 системи Master вузол через мережевий комутатор роздає IP-адреси для всіх вузлів кластера, тобто відбувається початкова ініціалізація, і кластер готовий до роботи. Саме з огляду на останні досягнення в галузі конструювання багатопроцесорних систем і створено модуль високоефективної багатопроцесорної системи з розширюваною областю обчислень .

У конфігурації кластера було обрано N лез і модульний принцип його реалізації. Це забезпечує, у разі необхідності, розширення обчислювальних можливостей за рахунок встановлення додаткових модулів. Кожен вузол працює під керуванням власної копії операційної системи, причому найчастіше використовують стандартні операційні системи: Linux, NT, Solaris і подібних. Склад і потужність вузлів описаного кластера може змінюватися, що дозволяє створювати неоднорідні системи. Комутаційна мережа з'єднує процесори один з одним. У такої архітектури багато переваг: за необхідності можна додавати процесори, збільшуючи продуктивність такого кластера; якщо обмежені фінансові можливості або заздалегідь відома необхідна обчислювальна потужність, то можна легко підбирати необхідну конфігурацію системи. Назва подібних систем підкреслює теоретично необмежену масштабованість пристроїв даного класу. Зауважимо, що розробка таких систем є актуальним завданням. Це пояснюється не тільки принциповим обмеженням максимально можливої швидкодії звичайних послідовних ЕОМ, але також практично постійним існуванням обчислювальних задач, для розв'язування яких недостатньо можливостей існуючих засобів обчислювальної техніки. До них належать, наприклад, чисельне моделювання процесів гідродинаміки та металургійної теплофізики [2], задачі розпізнавання образів, оптимізаційні задачі з великою кількістю параметрів, моделювання клімату, розрахунки в генній інженерії, проектування інтегральних схем, аналіз забруднення навколишнього середовища [2], а також обчислення широкого кола багатовимірних нестаціонарних задач [2] та ін.

Конструктивна реалізація та режими доступу до багатопроцесорної системи[ред.]

Рисунок 2.1 - Cхема модуля БОС

Мета даного розділу полягає у висвітлені процесів конструювання модуля багатопроцесорної обчислювальної системи, реальна ефективність і продуктивність якого була б піковою при розв’язуванні сильно зв’язаних задач та задач з розширюваною областю обчислень. До того ж дана система повинна мати підвищену надійність і високу енергоефективність. Блоки запропонованого пристрою повинні комплектуватися за допомогою засобів обчислювальної техніки масового виробництва. Блок-схема модуля БОС подана на рисунку 2.1.

Так, модуль містить один майстер-вузол (PM001) і N обчислювальних slave- вузлів (PN001, PN002, … , PN00n), два керовані комутатори (SW1, IB1), реконфігуровану мережу для обміну даними між обчислювальними вузлами, систему локального збереження результатів та проміжних обчислень (TCA Controller Storage System), механізм резервування ключових компонентів, а також передбачає завантаження вузлів у мережі GI (Gigabit Ethernet) за допомогою комутатора SW1.

У майстер-вузлі та slave-вузлах застосовуються одні й ті самі комплектувальні елементи (материнські плати, процесори, мережеві плати Gigabit Ethernet, зовнішні двопортові мережеві плати InfiniBand ConnectX-3 HCA (MCX354A-FCBT). Зокрема, майстер-вузол додатково обладнано накопичувачем жорсткого диску (SSD) та DVD. Комутована мережа багатопроцесорної 47 обчислювальної системи підтримує п’ять режимів конфігурації: -“зірка”, “кільце”, “лінійка”, “решітка”, “граф”. Їх було орієнтовано на реалізацію граничного обміну даними, що відображають особливості задач, які розв’язуються за допомогою подібної багатопроцесорної системи. Налаштування комутатора IB1 та його конфігурування виконується майстер- вузлом за допомогою двох портів стандарту Gigabit Ethernet (IB1GI.i1 − керування, IB1GI.i2 − масштабування). Систему локального збереження результатів та проміжних обчислень TCA Controller Storage System під’єднанно до порту 16 керованого комутатора IB1. Як конструктив було обрано єдиний корпус, що являє собою осередок обчислювальної шафи. Це пов'язане з тим, що, з одного боку, при необхідності можна декілька модулів розміщати в єдиному корпусі, а з іншого боку – при такому підході забезпечується компактність, успішне охолодження й легкий доступ до гнізд та елементів плат, які налагоджуються. Обчислювальна система включає вертикальне, паралельне стосовно одне одного розташування системних плат, що відповідає ідеї “Blade”-серверів.

Майстер-вузол (PM001) через комутатор KGI SW1 забезпечує спрямування потоку даних, пов’язаних із керуванням, діагностикою. В свою чергу  slave-вузли відповідно до алгоритму розв’язування задач і перебігу процесів реалізують режим необхідних обчислень. Обмін даними між обчислювальними вузлами та завантаженням умов задач винесено в окрему мережу, яка організована за допомогою керованого комутатора KIB IB1. Для досягнення максимальної ефективності роботи кластерної системи використовуються одно- чи двопортові адаптери InfiniBand та здійснюється процес реконфігурації структури другої мережі відповідно до специфіки розв’язуваних задач. Результати проміжних та остаточних обчислень передаються в майстер-вузол через керований комутатор InfiniBand KIB.

При цьому керування та передача відповідних даних із slave-вузлів відбувається за допомогою мережевих адаптерів HCA. Безпосередньо зберігання даних обчислень з метою їх подальшої обробки виконується за допомогою мережевого адаптера TCA. Технічний результат, який досягається після запровадження даної системи, полягає в тому, що обмін даними між обчислювальними вузлами винесено в окрему мережу з використанням технології InfiniBand. Це збільшило швидкість обміну даними та суттєво знизило латентність (завантаження каналів) мережі, яка з’єднує вузли кластера. Застосування комутованого середовища в мережі обміну даними зі сполуками “точка − точка”, на відміну від попередніх варіантів мереж, котрі використовували шинне з'єднання, дозволило суттєво збільшити швидкість передачі даних між вузлами багатопроцесорної системи та зменшити латентність у середовищі передачі пакетів даних. Це пояснюється тим, що всі передачі починаються та закінчуються на HCA-адаптері каналу.  Уведення режиму QDR  (Quad Data Rate) у  двопортових мережевих платах MCX353A-FCBT  (максимальна швидкість передачі даних у режимі 2 х 56 Гбит/с, відповідає режиму FDR (Fourteen Data Rate) узгодило обчислювальні можливості процесора та мережі передачі даних по інтерфейсу PCI Express (2  х  32 = 64 Гбит/с). Використання принципу RDMA (Remote Direct Memory Access) дає можливість передавати дані без додаткової буферизації й не вимагає активної роботи ОС, а також бібліотек або додатків. Це сприяє суттєвому зменшенню навантаження на процесори системи під час передачі даних, внаслідок чого звільняються обчислювальні ресурси процесорів і зменшується латентність у середовищі передачі даних. Мережеве завантаження системи і введення механізму резервування ключових компонентів, а також використання блоків живлення для кожного леза багатопроцесорної системи дозволяє підвищити надійність функціонування модуля системи в цілому. Причинно-наслідковий зв'язок між сукупністю істотних ознак такої системи та технічним результатом, який досягається, полягає в тому, що введення підмереж завантаження системи, діагностики й обміну даними розвантажило мережі обчислювальної системи, поліпшило її доступність і продуктивність.[2]

Режим конфігурування й налаштування програмного забезпечення обчислювальних вузлів спрощується за рахунок мережевого завантаження. При цьому в обчислювальних вузлах відсутні мережеві диски, а завантаження, їх налаштування, діагностика та керування відбувається через першу мережу комутатора SW1. Подібний підхід дозволяє гнучко переналаштовувати конфігурацію, оновлювати й адаптувати ПЗ його під конкретне завдання. Мережеве завантаження модуля багатопроцесорної системи, резервування ключових компонентів модуля, а також істотне зменшення кількості компонентів системи дає можливість підвищення надійності функціонування вузла. Для забезпечення високої надійності системи електроживлення багатопроцесорної системи напруга подається через безперебійний блок живлення (UPS), який під'єднаний до модуля керування П01, від нього через силові мережеві інтерфейси (розгалужувачі) струм надходить у блоки живлення головного модуля та slave-вузлів системи. Таким чином, у кожному лезі модуля багатопроцесорної обчислювальної системи присутні однотипні блоки живлення. Даний підхід зменшує стрибки напруги при вмиканні блоків живлення, збільшує надійність системи, реалізує режим їхнього оптимального завантаження та дозволяє зменшити споживану електроенергію обчислювальної системи в цілому. Описаний інтерфейс електроживлення обчислювальних вузлів модуля багатопроцесорної системи посприяв спрощенню структури цієї операції, зрештою, істотному зниженню вартості обчислювальної системи, використовуючи один UPS на весь модуль.  Завдяки запровадженню зазначеного режиму енергоспоживання з'явилася можливість відмовитися від спеціалізованих інтегрованих систем кондиціонування, що теж знизило вартість системи в цілому. Разом з тим, застосовування однотипних компонентів системи енергоживлення та режиму її резервування дало змогу підвищити надійність функціонування системи.  Обмін даними між обчислювальними вузлами винесено в окрему мережу з використання технології InfiniBand, що збільшило швидодію системи в цілому та суттєво знизило латентність (завантаження каналів) мережі, яка з’єднує вузли кластера.[3]

Використання принципу RDMA дозволяє передавати дані без додаткової буферизації й не вимагає активної роботи ОС, а також бібліотек або додатків, що суттєво зменшує навантаження на процесори системи під час передачі даних, внаслідок чого звільняються обчислювальні ресурси процесорів і зменшується латентність у середовищі передачі даних. Застосування двопортових HCA-адаптерів за рахунок режиму 4-x агрегації каналів мережевого інтерфейсу дає можливість змінювати конфігурацію мережі, поліпшивши її пропускну здатність. Реалізація реконфігурованої мережі сприяє підвищенню ефективності кластерної системи, адаптуючи структуру її мережі  для вирішення кожного конкретного типу завдань. Мережеве завантаження системи і введення механізму резервування ключових компонентів, а також використання блоків живлення для кожного леза багатопроцесорної системи дозволяє поліпшити надійність функціонування модуля системи. Можливі режими зв’язку робочого ПК з багатопроцесорною системою наведені .

Примітки[ред.]

  1. Помилка скрипту: Не існує модуля «citation/CS1».
  2. 2,0 2,1 2,2 Помилка скрипту: Не існує модуля «citation/CS1».
  3. Помилка скрипту: Не існує модуля «citation/CS1».



This article "Високоефективна багатопроцесорна система з розширюваною областю обчислень" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Високоефективна багатопроцесорна система з розширюваною областю обчислень.