Beowulf

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Beowulf (Beowolf) - кластер, який складається з широко поширеного апаратного забезпечення, що працює під управлінням операційної системи, поширюваної з вихідними кодами (наприклад, GNU / Linux або FreeBSD).

Особливістю такого кластера також є масштабованість, тобто можливість збільшення кількості вузлів системи з пропорційним збільшенням продуктивності. Вузлами в кластері можуть служити будь серійно випускаються автономні комп'ютери, кількість яких може бути від 2 до 1024 і більше. Для розподілу обробки даних між вузлами зазвичай використовуються технології MPI або PVM.

Походження терміну

Спочатку так називався один з Linux-кластерів в науково-космічному центрі NASA, і ця назва була взята з однойменної давньоанглійської епічної поеми про героя-богатиря Беовульфа.

Переваги Beowulf-систем

-вартість системи набагато нижче вартості суперкомп'ютера;

-можливість збільшення продуктивності системи;

-можливість використання застарілих комп'ютерів, тим самим збільшується термін експлуатації комп'ютерів;

-широка поширеність, а значить і доступність, апаратного забезпечення.

Як побудувати Beowulf?

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

1. Вузли кластера. Підходящим вибором в даний момент є системи на базі процесорів Intel: Pentium II або Pentium II Xeon - або однопроцесорні ПК, або SMP-сервера з невеликим числом процесорів (2-4, можливо до 6). З деяких причин оптимальним вважається побудова кластерів на базі двопроцесорних систем, незважаючи на те, що в цьому випадку настройка кластера буде дещо складніше (головним чином тому, що доcтупни відносно недорогі материнські плати для 2 процесорів Pentium II). Варто встановити на кожен вузол 64-128MB оперативної пам'яті (для двопроцесорних систем 64-256MB).

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

При комплектації робочих вузлів цілком можливо відмовитися від жорстких дисків - ці вузли будуть завантажувати ОС через мережу з центральною машини, що, крім економії коштів, дозволяє конфігурувати ОС і все необхідне ПЗ тільки 1 раз (на центральній машині). Якщо ці вузли не будуть одночасно використовуватися в якості користувальницьких робочих місць, немає необхідності встановлювати на них відеокарти і монітори. Можлива установка вузлів в стійки (rackmounting), що дозволить зменшити місце, займане вузлами, але коштуватиме дещо дорожче.

Можлива організація кластерів на базі вже існуючих мереж робочих станцій, тобто робочі станції користувачів можуть використовуватися в якості вузлів кластера вночі і у вихідні дні. Системи такого типу іноді називають COW (Cluster of Workstations).

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

2. Мережу. У найпростішому випадку використовується один сегмент Ethernet (10Mbit / sec на кручений парі). Однак дешевизна такої мережі, внаслідок колізій обертається великими накладними витратами на міжпроцесорні обміни; а хорошу продуктивність такого кластера слід очікувати тільки на завданнях з дуже простої паралельної структурою і при дуже рідкісних взаємодіях між процесами (наприклад, перебір варіантів).

Для отримання хорошої продуктивності міжпроцесорних обмінів використовують повнодуплексний Fast Ethernet на 100Mbit / sec. При цьому для зменшення числа колізій або встановлюють декілька "паралельних" сегментів Ethernet, або з'єднують вузли кластера через комутатор (switch).

Більш дорогим, але також популярним варіантом є використання комутаторів типу Myrinet (1.28Gbit / sec, повний дуплекс). Менш популярними, але також реально використовуваними при побудові кластерів мережевими технологіями є технології сLAN, SCI і Gigabit Ethernet.