Здавалка
Главная | Обратная связь

Системи з масовим паралелізмом (МРР)



Проблеми, притаманні багатопроцесорним системам зі спільною пам'яттю, простим і природним чином усуваються в системах з масовим паралелізмом. Комп'ютери цього типу є багатопроцесорними системами з розподіленою пам'яттю, в яких за допомогою деякого комунікаційного середовища об'єднуються однорідні обчислювальні вузли.

Кожен з вузлів складається з одного або декількох процесорів, власної оперативної пам'яті, комунікаційного обладнання, підсистеми введення/виведення, тобто має все необхідне для незалежного функціонування.

При цьому на кожному вузлі може функціонувати або повноцінна операційна система (як в системі RS/6000 SP2), або урізаний варіант, що підтримує лише базові функції ядра, а повноцінна ОС працює на спеціальному керівному комп'ютері (як в системах Cray T3E, nCUBE2).

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

Це дає можливість практично необмеженого нарощування кількості процесорів в системі, збільшуючи тим самим її продуктивність. Успішно функціонують MPP з сотням і тисячами процесорів (ASCI White – 8192, Blue Mountain – 6144).

Важливою властивістю MPP систем є їх висока міра масштабованості. Залежно від обчислювальних потреб для досягнення необхідної продуктивності потрібно просто зібрати систему з потрібною кількістю вузлів.

На практиці все, звичайно, набагато складніше. Усунення одних проблем, як це зазвичай буває, породжує інші. Для MPP систем на перший план виходить проблема ефективності комунікаційного середовища.

Різні виробники MPP систем використовували різні топології. У комп'ютерах Intel Paragon процесори утворювали прямокутну двовимірну сітку. Для цього в кожному вузлі досить чотирьох комунікаційних каналів.

У комп'ютерах Cray T3D/T3E використовувалася топологія тривимірного тора. Відповідно, у вузлах цього комп'ютера було шість комунікаційних каналів. Фірма nCUBE використовувала в своїх комп'ютерах топологію n-вимірного гіперкуба.

Кожна з розглянутих топологій має свої переваги і недоліки.

Відмітимо, що при обміні даними між процесорами, які не є найближчими сусідами, відбувається трансляція даних через проміжні вузли. Очевидно, що у вузлах мають бути передбачені якісь апаратні засоби, які звільняли б центральний процесор від участі в трансляції даних.

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

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

Оперативна пам'ять в MPP системах має 3-х рівневу структуру:

· кеш-пам'ять процесорів;

· локальна оперативна пам'ять;

· оперативна пам'ять інших вузлів.

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

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

 

Кластерні системи

Кластерні технології стали логічним продовженням розвитку ідей, закладених в архітектурі MPP систем.

Якщо процесорний модуль в MPP системі є закінченою обчислювальною системою, то наступний крок напрошується сам собою: чому б в якості обчислювальних вузлів не використовувати звичайні комп'ютери, що серійно випускаються.

Розвиток комунікаційних технологій, а саме, поява високошвидкісного мережевого обладнання і спеціального програмного забезпечення, такого як система MPI, що реалізовує механізм передачі повідомлень над стандартними мережевими протоколами, зробили кластерні технології загальнодоступними.

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

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

Зокрема, одним з перших був реалізований проект COCOA, в якому на базі 25 двопроцесорних персональних комп'ютерів загальною вартістю порядку $100000 була створена система з продуктивністю, еквівалентною 48-процесорному Cray T3d вартістю декілька мільйонів доларів США.

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

Комунікаційне середовище можна досить повно охарактеризувати двома параметрами: латентністю – час затримки при відсиланні повідомлення та пропускною здатністю – швидкість передачі інформації. Так ось для комп'ютера Cray T3D ці параметри складають відповідно 1 мкс і 480 мб/с, а для кластера, у якому в якості комунікаційного середовища використана мережа Fast Ethernet, 100 мкс і 10 мб/с.

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

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

По-перше, розроблено безліч диспетчерських систем пакетної обробки завдань, що дозволяють відправити завдання на обробку кластеру вцілому, а не якомусь окремому комп'ютеру. Ці диспетчерські системи автоматично розподіляють завдання за вільними обчислювальними вузлами або буферизують їх за відсутності таких, що дозволяє забезпечити більш рівномірне і ефективне завантаження комп'ютерів.

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

При цьому не накладається жодних обмежень на склад і архітектуру вузлів. Кожен з вузлів може функціонувати під управлінням своєї власної операційної системи. Найчастіше використовуються стандартні ОС: Linux, FreeBSD, Solaris, Tru64 Unix, Windows.

У тих випадках, коли вузли кластера неоднорідні, то говорять про гетерогенні кластери.

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

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

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

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.