Вычислительные кластеры

В последнее время все большую популярность в мире получают вычислитель­ные кластеры. Сразу оговоримся, что в компьютерной литературе понятие "кластер" употребляется в различных значениях. В частности, "кластерная" технология используется для повышения скорости работы и надежности серве­ров баз данных или web-серверов. Здесь мы будем говорить только о кластерах, ориентированных на решение задач вычислительного характера.

Если говорить кратко, то вычислительный кластер - это совокупность компью­теров, объединенных в рамках некоторой сети для решения одной задачи. В ка­честве вычислительных узлов обычно используются доступные на рынке одно­процессорные компьютеры, двух или четырехпроцессорные SMP-серверы. Ка­ждый узел работает под управлением своей копии операционной системы, в ка­честве которой чаще всего используются стандартные ОС: Linux, Windows NT, Solaris и т.п. Состав и мощность узлов может меняться даже в рамках одного кластера, давая возможность создавать неоднородные системы. Выбор кон­кретной коммуникационной среды определяется многими факторами: особен­ностями класса решаемых задач, доступным финансированием, необходимо­стью последующего расширения кластера и т.п. Возможно включение в конфи­гурацию кластера специализированных компьютеров, например, файл-сервера. Как правило, предоставляется возможность удаленного доступа на кластер че­рез Internet.

Ясно, что простор для творчества при проектировании кластеров огромен. Уз­лы могут не содержать локальных дисков, коммуникационная среда может од­новременно использовать различные сетевые технологии, узлы не обязаны быть одинаковыми и т.д. Рассматривая крайние точки, кластером можно счи­тать как пару ПК, связанных локальной 10-мегабитной Ethernet-сетью, так и вычислительную систему, создаваемую в рамках проекта Cplant в Националь­ной лаборатории Sandia: 1400 рабочих станций на базе процессоров Alpha объ­единены высокоскоростной сетью Myrinet.

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

Список ТОР500

Top500 - официальный список 500 мощнейших компьютеров мира. Произво­дительность компьютеров оценивается на тесте LINPACK. Список обновляется 2 раза в год. Последняя (20-я) редакция списка опубликована в ноябре 2002 г.

Тест LINPACK представляет собой решение больших систем линейных алгеб­раических уравнений методом LU-разложения. Параллельная реализация LINPACK основана на библиотеке SCALAPACK. Производительность опреде­ляется как количество "содержательных" операций с плавающей точкой в еди­ницу времени, и выражается в Мфлопс. Число выполненных операций с пла­вающей точкой оценивается по формуле 2n3/3 + 2n2 (здесь п - размерность мат­рицы). В настоящее время LINPACK используется для формирования списка Top500 пятисот самых мощных компьютеров мира. Кроме пиковой производи­тельности Rpeak для каждой системы указывается величина Rmax, равная произ­водительности компьютера на тесте LINPACK с матрицей максимального для данного компьютера размера Nmax. По значению Rmax отсортирован весь список. Как показывает анализ представленных данных, величина Rmax составляет 50— 70% от значения Rpeak. Интерес для анализа функционирования компьютера представляет и указанное в каждой строке значение N1/2, показывающее, на матрице какого размера достигается половина производительности Rmax.

Сравнение коммуникационных технологий построения кла­стеров

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

Первоначально Beowulf-кластеры строились на базе обычной 10-мегабитной сети Ethernet. Сегодня часто используется сеть Fast Ethernet, как правило, на ба­зе коммутаторов. Основное достоинство такого решения — это низкая стои­мость. Вместе с тем, большие накладные расходы на передачу сообщений в рамках Fast Ethernet приводят к серьезным ограничениям на спектр задач, эф­фективно решаемых на таких кластерах. Если от кластера требуется большая универсальность, то нужно переходить на другие, более производительные коммуникационные технологии. Исходя из соображений стоимости, произво­дительности и масштабируемости, разработчики кластерных систем делают выбор между Fast Ethernet, Gigabit Ethernet, SCI, Myrinet, cLAN, ServerNet и ря­дом других сетевых технологий.

Вычислительные кластеры - student2.ru

Узел 1 Узел 2

Какими же числовыми характеристиками выражается производительность коммуникационных сетей в кластерных системах? Необходимых пользователю характеристик две: латентность и пропускная способность сети. Латентность — это время начальной задержки при посылке сообщений. Пропускная способность сети определяется скоростью передачи информации по каналам связи. Если в программе много маленьких сообщений, то сильно скажется латентность. Если сообщения передаются большими порциями, то важна высокая пропускная способность каналов связи. Наличие латентности определяет и тот факт, что максимальная скорость передачи по сети не может быть достигнута на сообщениях с небольшой длиной. На практике пользователям не столько важны заявляемые производителем пи­ковые характеристики, сколько реальные показатели, достигаемые на уровне приложений, например из программ, использующих технологию MPI. После вызова пользователем функции посылки сообщения Send() сообщение после­довательно проходит через целый набор слоев, определяемых особенностями организации программного обеспечения и аппаратуры. Этим, в частности, оп­ределяются и множество вариаций на тему латентности реальных систем. Ус­тановили MPI на компьютере плохо, латентность будет большая, купили деше­вую сетевую карту от неизвестного производителя, ждите дальнейших сюрпри­зов. Кстати, наличие латентности определяет и тот факт, что максимальная ско­рость передачи по сети не может быть достигнута на сообщениях с небольшой длиной.

В следующей таблице приводятся некоторые характеристики наиболее извест­ных коммуникационных технологий, используемых при построении кластер­ных систем.

  SCI Myrinet cLAN Server-Net Fast Ethernet
Латентность (MPI) 5,6 мкс 17 мкс 30 мкс 13 мкс 170 мкс
Пропускная способность (MPI) Мбайт/с Мбайт/с Мбайт/с Мбайт/с Мбайт/с
Пропускная способность (аппаратная) Мбайт/с Мбайт/с Мбайт/с н/д 12,5 Мбайт/с
Реализация MPI ScaMPI HPVM, MPICH-GM и др. MPI/Pro MVICH MPICH
Производитель Dolphin Myricom Giganet Compaq Intel, Com и др.
Таблица. Сравнительные характеристики коммуникационных технологий

Наши рекомендации