Обзор

Кластерное ПО фирмы Red Hat, построенное на базе технологии Beowulf, позволяет достичь потрясающей производительности на простых ПК

Панкай Чоудри, Генри Балтазар (PC Week Labs)

Операционная система Linux давно уже стала питомником передовых технологий, некоторые из них пробили себе дорогу и на широкий рынок. Мощная технология кластеризации Beowulf пока не готова для корпоративного применения, но специалистам Тестового центра PC Week Labs удалось построить с ее помощью суперкомпьютер, состоящий из машин с процессорами Pentium Pro. Beowulf вполне может послужить основой для дальнейшего развития технологий кластеризации.

Мы испытывали пакет Extreme Linux фирмы Red Hat Software, объединяющий технологию кластеризации, разработанную в рамках проекта Beowulf Национального управления по аэронавтике и космическим исследованиям, и ОС Red Hat Linux. Результаты оказались выше всяких ожиданий - почти линейное увеличение производительности при расширении числа машин в кластере до восьми штук. Однако и сложности, с которыми нам пришлось столкнуться в ходе компиляции ПО и его конфигурирования (стоивших нам многих часов работы), не были рядовыми. Эта высокопроизводительная технология кластеризации обладает огромным потенциалом, но она пока недостаточно отлажена.

Средства кластеризации фирмы Novell и корпорации Microsoft по-прежнему находятся в “младенческом” состоянии (фактически они обеспечивают лишь перенос нагрузки на резервную систему в случае аварии основной), но и технология Beowulf пока не готова к тому, чтобы добиться признания корпоративной Америки.

Extreme Linux ($29) предъявляет очень высокие требования к компетентности системного администратора. К тому же системы технической поддержки Extreme Linux не существует, с проблемами приходится обращаться в группы новостей в надежде, что кто-нибудь знающий найдет время прочесть и ответить вам.

Самое простое из испытаний, с которыми мы столкнулись в ходе тестирования, - установка ОС Red Hat Linux 5.0 (хотя и это занятие не для желторотых новичков). Настоящие проблемы начались, когда дело дошло до написания специализированного ПО, исполняемого на кластере и использующего преимущества параллельной обработки.

Значительную часть немногочисленных пользователей технологии кластеризации Beowulf составляют исследовательские центры. Для выполнения сложных математических расчетов им требуется вычислительная мощность такого уровня, какую предоставляют обычно только высокопроизводительные мэйнфреймы. А из коммерческих организаций получить отдачу от вложений в разработку прикладных программ для этой платформы смогут лишь те, которые интенсивно занимаются математическим моделированием или шифруют большие объемы данных.

Beowulf - это набор модификаций для ядра ОС и механизм передачи сообщений, благодаря им становится возможным линейное масштабирование производительности кластера со слабосвязанной архитектурой (т. е. основанного на совместном использовании процессоров, распределенных по нескольким автономным машинам, в противоположность технологии симметричной многопроцессорной обработки) при добавлении в него компьютеров, объединенных в стандартную сеть.

Кластер демонстрирует близкое к линейному масштабирование

Мы составили свой испытательный кластер из восьми машин OptiPlex с 200 МГц процессорами Pentium Pro, соединив их с помощью коммутатора Fast Ethernet. Наша конфигурация работала по схеме ведущий - ведомый, когда один компьютер выполнял роль центрального контроллера, распределяющего нагрузку между остальными узлами кластера.

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

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

Мы тестировали Beowulf с помощью бесплатно распространяемого набора тестов Persistence of Vision (его можно найти на узле www.povray.org), в котором методом трассировки лучей, учитывающим тени и отражения, генерируется трехмерное текстурированное изображение вазы, освещенной несколькими лампами.

Вычислительный механизм делит изображение вазы на квадраты размером 64х64 бита, каждый из них обсчитывается отдельно на одном из удаленных узлов. После завершения вычислений все результаты собираются на машине-контроллере и объединяются в окончательную картинку.

Одна из проблем, возникших при использовании этого приложения, - неравномерное распределение вычислительной нагрузки. Та же самая проблема должна проявиться и в случае обработки сложного запроса к БД, когда одна из его частей производит поиск в нескольких миллионах записей, а другая - всего в нескольких сотнях. Адекватным решением для нее может стать некоторая программа предварительного анализа, интегрированная с ПО контроллера.    

Резюме для руководителей

 

Extreme Linux

 

ПО Extreme Linux фирмы Red Hat Software, состоящее из средств кластеризации, основанных на разработанной специалистами НАСА технологии Beowulf, и операционной системы Red Hat Linux, позволяет объединять ПК с процессорами класса Pentium Pro в кластеры для получения суперкомпьютерных уровней производительности. Эта многообещающая технология продемонстрировала почти линейную масштабируемость, однако в настоящее время она пригодна лишь для решения задач, требующих большой вычислительной мощности. Отсутствие готового ПО для корпоративного применения и системы технической поддержки делают это решение пока не пригодным для использования корпоративными подразделениями по ИТ.

Позволяет добиться значительного увеличения производительности путем объединения компьютеров в кластер.

Необходимо писать приложения специально для Beowulf; отсутствует организованная система технической поддержки.

Фирма Red Hat Software, Рисеч-Трайэнгл-Парк, шт. Сев. Каролина, (919) 547-0012; www.redhat.com.

Методика оценки: www.pcweek.com/reviews/meth.html.