Смекни!
smekni.com

Кластерные системы (стр. 2 из 4)

Кластерные системы — статистика

Ниже приведен сравнительный анализ оснащенности суперкомпьютерами предприятий СНГ и наиболее развитых мировых держав в различных отраслях экономики на основе мирового суперкомпьютерного рейтинга Тор500 и рейтинга самых мощных компьютеров СНГ Тор50, а также сравнение первой и второй редакций рейтинга Тор50 по этому показателю.

Сравнительные данные по использованию суперкомпьютеров

Области использования В мире (Тор500), % В СНГ (Тор50, 2-я редакция), % В СНГ (Тор50, 1-я редакция), %
Промышленность: электронная; тяжелая (автомобильная, авиационная, металлургия и др.); добывающая (геологоразведка, нефте- и газодобыча) 44,3 16 2
Вычислительные центры, наука и образование: суперкомпьютерные центры, университеты и научные институты (физика, математика, химия, биология, генетика), поставщики суперкомпьютеров, системные интеграторы 21,2 66 96
Прогнозы погоды и климатические исследования 18,5 - -
Стратегические исследования, программы Министерства обороны, космическая и ядерная программы 7,1 - -
Финансы: банки, финансовые корпорации, страхование, финансовые прогнозы и консалтинг 3,5 18 2
Потребительский сектор, медицина и фармакология, транспорт, торговля, производство потребительских товаров, продуктов питания 3
Медиа: цифровые видеотехнологии, компьютерные игры и пр. 2,2 - -
Государственное управление 0,2 - -

Сравнительные данные по производительности суперкомпьютеров

Области использования Максимальный уровень, GFIops Средний уровень, GFIops
В мире В СНГ (Тор50-2) В мире В СНГ (Тор50-2)
Исследования 136800 3052 (меньше в 44 раза) 1800 120 (меньше в 15 раз)
Финансы 4713 438,6 (меньше в 10,7 раза) 1500 139 (меньше в 10,7 раза)
Промышленность 3755 2032 (меньше в 1,8 раза) 1500 165 (меньше в 9 раз)

Типичные задачи кластерных систем

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

Для практических расчетов (3D-анимация, крэш-тесты, разведка нефтяных и газовых месторождений, прогнозирование погоды) обычно используются кластеры из 10-200 узлов. При этом основная задача — обеспечение эффективной работы кластера с конкретным приложением. Архитектура кластера должна обеспечивать масштабируемость ПО при увеличении количества узлов, т. е. прирост производительности при добавлении новых вычислительных модулей. Для этого важно правильно выбрать конфигурацию кластера в зависимости от профиля обмена данными между экземплярами программы, запущенными на разных узлах. Здесь нужно учитывать общий объем пересылаемых данных, распределение длин сообщений, использование групповых операций и т. п.

Сегодня даже те задачи, для решения которых традиционно применялись многопроцессорные системы с общей памятью, такие, как управление крупными базами данных, успешно решаются на кластерах. Появление на рынке таких продуктов, как, например, Oracle RAC (Real Applications Cluster), дало возможность применять кластерные системы в области баз данных, а новая версия СУБД Oracle 10g, построенная на базе GRID-технологий, обеспечивает максимально эффективное использование кластерной архитектуры для решения этих задач. Таким образом, благодаря доступности кластерных решений число предприятий, которые могут позволить себе кардинально упростить и ускорить работу с корпоративной базой данных, существенно увеличивается.

Кластерные решения — наиболее экономически обоснованный выбор. В отличие от большинства серверных систем с общей памятью кластерные решения легко масштабируются до систем большей производительности. Таким образом, при ужесточении требований заказчика к производительности необязательно покупать новую систему — можно добавить стандартные вычислительные узлы и легко нарастить старую. Причем диапазон масштабируемости очень широк: например, 288-узловой кластер «СКИФ К-1000» с пиковой производительностью 2,5 TFlops можно нарастить до системы мощностью 30 TFlops путем объединения стандартных вычислительных модулей.

Кластерные решения обладают наилучшим на сегодня соотношением цена/производителыюсть и имеют существенно более низкую совокупную стоимость владения. Это достигается благодаря масштабируемости и использованию стандартных общедоступных компонентов, цена которых постоянно снижается. Два кластерных двухпроцессорных узла в среднем на 35% дешевле, чем один четырехпроцессорный SMP-сервер, причем с ростом количества процессоров преимущество кластерных решений по этому параметру увеличивается. Кроме того, кластерная архитектура обеспечивает великолепную отказоустойчивость системы: при выходе из строя одного или нескольких вычислительных модулей (или узлов) кластер не теряет работоспособности и новые задачи могут быть запущены на меньшем числе узлов. Вышедший из строя узел легко и быстро вынимается из стойки и заменяется новым, который сразу же включается в работу. Это возможно благодаря коммутируемой топологии современных системных сетей, «когда обмен сообщениями между двумя узлами может идти многими путями. В ходе эксплуатации система типа «СКИФ К-1000» предполагает возможный выход из строя не более 2 узлов в год.

Архитектура кластерных систем

Итак, в настоящее время кластер состоит из вычислительных узлов на базе стандартных процессоров, соединенных высокоскоростной системной сетью (интер-коннектом), а также, как правило, вспомогательной и сервисной сетями. Большинство кластерных систем списка Тор500 выполнены на процессорах Intel (Intel Xeon, Intel Xeon EM64T, Intel Itanium 2). Часто используются процессоры Power и PowerPC компании IBM. В последнее время популярностью пользуются процессоры AMD (особенно AMD Opteron и его недавно вышедшая двухъядерная версия).

В качестве вычислительных узлов чаще всего используются двухпроцессорные SMP-серверы в корпусе от 1U до 4U, собранные в 19-дюйм стойки. Компактные устройства позволяют создавать высокопроизводительные решения с максимальной удельной плотностью, более крупные — недорогие системы. Иногда ведущие изготовители предлагают собственный формфактор: например, IBM, Verari, LinuxNetworx и другие компании предлагают вычислительные узлы на основе блэйд-технологий, которые обеспечивают высокую плотность установки, но удорожают решение. На российском рынке блэйд-решения пока мало востребованы из-за их высокой стоимости.

Каждый узел работает под управлением своей копии стандартной операционной системы, в большинстве случаев — Linux. Состав и мощность узлов могут быть разными в рамках одного кластера, однако чаще строятся однородные кластеры. Выбор конкретной коммуникационной среды (интерконнекта) определяется многими факторами: особенностями решаемых задач, доступным финансированием, требованиями к масштабируемости и т. п. В кластерных решениях применяются такие технологии интерконнекта, как Gigabit Ethernet, SCI, Myrinet, QsNet, InfiniBand.

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

Системная сеть, или высокоскоростная коммуникационная среда, выполняет задачу обеспечения эффективности вычислений. Gigabit Ethernet — наиболее доступный тип коммуникационной среды, оптимальное решение для задач, не требующих интенсивных обменов данными (например, визуализация трехмерных сцен или обработка геофизических данных). Эта сеть обеспечивает пропускную способность на уровне MPI* (около 70 Мбайт/с) и задержку (время между отправкой и получением пакета с данными) примерно 50 мкс. Myrinet — наиболее распространенный тип коммуникационной среды с пропускной способностью до 250 Мбайт/с и задержкой 7 мкс, а новое, недавно анонсированное ПО для этой сети позволяет сократить эту цифру в два раза. Сеть SCI отличается небольшими задержками — менее 3 мкс на уровне MPI — и обеспечивает пропускную способность на уровне MPI от 200 до 325 Мбайт/с. QsNet — очень производительное и дорогое оборудование, обеспечивающее задержку менее 2 мкс и пропускную способность до 900 Мбайт/с. Наиболее перспективная на сегодня технология системной сети — InfiniBand. Ее текущая реализация имеет пропускную способность на уровне MPI до 1900 Мбайт/с и время задержки от 3 до 7 мкс. Один из наиболее интересных продуктов, появившихся в последнее время, — высокоскоростной адаптер компании PathScale, который реализует стандартные коммутаторы и кабельную структуру InfiniBand, используя собственный транспортный протокол. Это позволило достичь рекордно низкого времени задержки — 1,3 мкс.