СУПЕРКОМПЬЮТЕРЫ

15 ноября на сайте www.top500.org появился обновленный список самых быстрых суперкомпьютеров (его зимняя версия была объявлена на конференции "Supercomputer Confe-rence-2003", прошедшей в Фениксе, США, с 15 по 21 ноября). Для многих стало большим сюрпризом, что в первой пятерке этого списка оказалась система, собранная из, казалось бы, совершенно не подходящих для этого компьютеров - Apple Macintosh.

Пролог

История создания суперкомпьютера, официально именуемого Terascale Computing Facility и уже успевшего получить прозвище Big Mac, довольно интересна.

Все началось с того, что в начале нынешнего года руководство Virginia Tech (полное название этого учебного заведения - Virginia Polytechnic Institute and State University) решило развернуть у себя высокопроизводительную вычислительную систему. Средства были выделены входящими в университет колледжами, причем не столь уж и бескорыстно: планировалось, что подобный суперкомпьютер позволит зарабатывать деньги путем продажи вычислительных мощностей различным исследовательским лабораториям и получения специальных грантов, направленных на дальнейшее совершенствование компьютерных архитектур. Но для этого в обязательном порядке было необходимо попасть на первые позиции в списке самых быстрых компьютеров top500, одним из спонсоров которого выступает столь важная для учебных и исследовательских институтов США организация National Science Foundation.

Все монтажные работы были проведены студентами

Virginia Tech на общественных началах

В результате возникла "простая" оптимизационная задача: за довольно небольшую заданную наперед сумму собрать максимально производительную компьютерную систему, причем срок ее ввода в эксплуатацию жестко ограничен - 1 октября. Учитывая, что на все отводилось чуть больше полугода, задача весьма нетривиальная.

С самого начало было ясно, что достичь приличных вычислительных показателей и уложиться в столь жесткие сроки возможно только при создании кластерной системы, состоящей из стандартных или слегка модифицированных компьютерных систем. Такие кластеры в списке top500 обычно называют "самодельными" (homebuilt).

Сразу после постановки задачи были выбраны четыре платформы, позволяющие достичь требуемого результата: на базе PowerPC 970 (производства IBM), на AMD Opteron (производства IBM и неназванной компании "второго эшелона"), на новых Itanium2 (HP и Dell) и, наконец, SPARC (разумеется, Sun Microsystems). В результате предварительных исследований (занявших почти полгода) оказалось, что приемлемые показатели на базе Itanium 2 и Opteron удается получить лишь при уровне затрат около 10 млн. долл., что для Virginia Tech дороговато. Система IBM на платформе Po-werPC 970 дешевле, но поставки ее начнутся лишь в следующем году. Руководитель проекта доктор Шридхи Варадараджан очутился в сложном положении. Но 23 июня компания Apple объявляет Power Macintosh G5, и уже через три дня г-н Варадараджан связывается с нею. Интересно, что до этого момента он вообще никогда не использовал Маки в своей работе. В Apple сначала приняли предложение о создании кластера за шутку, но далее все пошло как по маслу.

Стойки с Power Mac G5, составляющие Большой Мак.

Наверху шкафов видны криогенные теплообменники

Надо сказать, что к той поре Power Macintosh G5 в продажу еще не поступал, и руководству Virginia Tech пришлось договариваться с Apple о приоритетных поставках. Пятого сентября в институт начали прибывать трейлеры с Power Mac G5. Все 165 человек, задействованных в проекте, приступили к развертыванию кластера, и 23 сентября, всего через 10 дней после получения университетом последнего компьютера, система заработала и провела первые вычисления.

Архитектура

Каждый из 1100 вычислительных узлов кластера представляет собой почти стандартный Power Macintosh G5 "старшей" модели (см. PC Week/RE, N 24, с. 1), отличающийся от базовой лишь увеличенным объемом оперативной памяти. В результате каждый узел оказался снабжен парой 64-разрядных процессоров PowerPC G5 2 ГГц (также называемых IBM PowerPC 970), двухканальной DDR-памятью объемом 4 Гб и одним жестким диском SATA на 160 Гб; при покупке в "фирменном" электронном магазине Apple Store каждый такой компьютер обойдется вам в 5349 долл.

Так выглядит 96-портовый коммутатор

 InfiniBand 4X компании Mellanox

Довольно интересно решена проблема хранения данных - в Большом Маке не стали развертывать отдельное дисковое хранилище, а использовали распределенное дисковое пространство узлов общим объемом 176 Тб. Подобный ход вполне логичен для хранения временных данных, но несколько неуклюж в качестве долговременного хранилища. Вероятно, выбор полностью распределенной системы хранения был продиктован стремлением свести к минимуму общую стоимость кластера, архитектура которого, впрочем, легко позволяет в будущем при необходимости добавить специализированную дисковую подсистему большой емкости.

Кроме 1100 вычислительных в кластере имеется и пять специализированных узлов. Четыре из них заведуют начальным запуском кластера и распределением задач по вычислительным узлам, а также используются в качестве инструмента для подготовки (компиляции и сборки) заданий Большому Маку. Один узел является управляющим.

Каждый узел готов показать вполне достойную производительность, но все 1100 узлов необходимо объединить в единое целое. Совершенно ясно, что для систем класса Power Mac G5 столь широко применявшаяся в кластеростроении еще полгода назад технология Gigabit Ethernet с ее пиковой производительностью в 140 Мб/с в каждую сторону оказывается совсем уж слабой - ведь в Power Mac G5 эффективная скорость процессорных шин превышает 14,2 Гб/с, а скорость обмена с памятью достигает 6,4 Гб/с.

Монтаж кабельной системы и

 второго контура охлаждения

В результате было решено использовать новейшую технологию передачи данных InfiniBand второго поколения (4X), позволяющую обмениваться данными со скоростью 10 Гбит/с в обоих направлениях одновременно. Всю аппаратуру на базе этой технологии произвела компания Mellanox Technologies.

Во всех компьютерах - узлах кластера были установлены двухпортовые адаптеры Mellanox InfiniHost MTPB23108 PCI-X Adapter Board, причем каждый адаптер подключался сразу к двум коммутаторам InfiniBand.

Для объединения узлов было использовано 24 коммутатора MTEK43132-M96-2P с 96 портами InfiniBand 4X в каждом, так что суммарное число портов в системе составляет 2304. Точной схемы, по которой объединяется вся эта уйма коммутаторов, нам получить не удалось, но простой подсчет показывает, что портов явно недостаточно для создания действительно универсальной, работающей на полной скорости, коммутируемой инфраструктуры. Однако в данном случае общие соображения оказываются не слишком применимыми, поскольку данные для подавляющего большинства вычислительных задач имеют тенденцию к "локализации", что почти всегда позволяет ограничиться передачей между ближайшими узлами кластера.

Есть в Большом Маке и еще одна объединяющая все узлы кластера сеть. Она играет вспомогательную роль и используется для мониторинга и управления кластером, распределения задач между узлами и их запуска, доступа к единому дисковому пространству кластера по протоколу NFS и прочих обычных для протокола IP задач. В этой вторичной сети действуют имеющиеся в каждом из Power Mac G5 порты Gigabit Ethernet, а в единую сеть их объединяют пять модульных коммутаторов компании Cisco Systems серии 4500 с 240 портами Gigabit Ethernet в каждом.

Пара слов о Mellanox

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

Компьютерный зал Большого Мака

Прежде всего необходимо помнить об обратной стороне столь высокой производительности InfiniBand - проблеме сопряжения этого умопомрачительного потока данных с обычными компьютерами. Ведь обычная шина PCI, работающая на частоте 33 МГц и имеющая ширину 32 бита, выдает только 132 Мб/с, чего еле-еле хватает для заполнения Gigabit Ethernet. И даже самый быстрый вариант PCI, 64 бит/66 МГц, ограничен величиной 528 Мб/с. А двухпортовые "интеллектуальные" адаптеры Mellanox InfiniHost MTPB23108 PCI-X Adapter Board, использованные в узлах кластера, способны жонглировать внешними потоками в 32 Гбит/с, одновременно обмениваясь данными с компьютером на скорости 8,5 Гбит/с (1064 Мб/с). Разумеется, возможностей обычной PCI тут недостаточно - такая скорость обмена стала возможна лишь благодаря применению одного из самых быстрых на сегодня вариантов шины PCI-X. К счастью, в Power Mac G5 тоже имеется шина PCI-X, что позволяет использовать весь потенциал адаптера InfiniBand компании Mellanox.

Педант непременно заметит, что скорости и такой шины PCI-X не хватает, чтобы обработать весь поток даже одного порта InfiniBand, и безусловно будет прав. В оправдание компании Mellanox, предлагающей только двухпортовые адаптеры InfiniBand, можно привести три соображения.

Прежде всего, второй порт адаптера нужен скорее для повышения надежности, достигаемой подключением компьютера к двум различным коммутаторам InfiniBand одновременно, нежели для наращивания производительности. Далее, из-за особенностей кодирования сигнала реальная скорость обмена данными в InfiniBand оказывается на 20% меньше "сигнальной" скорости, так что один порт InfiniBand 4X передает не 10, а "всего лишь" 8 Гбит/с в каждую сторону, что примерно совпадает со скоростью PCI-X (если поток данных однонаправлен, конечно). Наконец, архитектура чипа Mellanox InfiniHost, использованного в данном адаптере, допускает применение (после введения минимальных изменений) и более быстрых шинных технологий - PCI-X 2.0 (до 17 Гбит/с) и PCI Express 8X (до 16 Гбит/с), в результате чего отмеченный педантом зазор в производительности между InfiniBand и внутренней шиной компьютера исчезает совсем (по крайней мере, в случае работы лишь одного порта адаптера).

При обсуждении адаптеров Mellanox стоит отметить, что разговор об их "интеллектуальности" - не просто слова. Эти адаптеры сами, без вмешательства центрального процессора, могут обмениваться данными из защищенных областей локальных буферов памяти (объем которой может достигать 512 Мб) или ОЗУ компьютеров-узлов. Соответствующая технология, являющаяся своеобразным развитием локальной Direct Me- mory Access (DMA), называется Remote Direct Memory Access (RDMA). Строго говоря, RDMA представляет собой один из двух режимов работы стандартного интерфейса InfiniBand Verbs; правда, почти полностью аппаратная реализация RDMA - это инициатива Mellanox. Кроме RDMA адаптеры на аппаратном уровне поддерживают массу протоколов сетевого и прикладного уровней, в том числе и столь важного для создания высокопроизводительных вычислительных кластеров Message Passing Interface (MPI). В результате передача данных между узлами кластера может обеспечиваться практически прозрачно для центральных процессоров - в отличие от передачи запросов MPI поверх IP через Ethernet, где процессоры довольно сильно загружаются несвойственной им работой по обработке сетевых пакетов. Благодаря такому интеллекту адаптеров Mellanox оборудование этой компании в типичных условиях выигрывает у конкурентов в области кластеростроения (Myrinet и Quadrics). Хотя строгое сравнение продуктов на таких скоростях оказывается затруднительным, в одном из весьма серьезных тестов на производительность MPI задержка при передаче данных у адаптеров Mellanox не поднималась выше 6 мкс (что почти всегда оказывалось не хуже конкурентов), а скорость передачи длинных пакетов достигала 860 Мб/с (почти втрое быстрее, чем у конкурирующих продуктов).

В коммутаторах Mellanox используется фирменный чип компании InfiniScale III, обеспечивающий работу на максимальной скорости в полнодуплексном режиме 24 портов InfiniBand 4X (10 Гбит/с или 1 Мб/с в каждую сторону); часть портов может быть объединена в группы по три для работы в самом быстром из стандартизованных на сегодня режимов InfiniBand 12X (30 Гбит/с или 3 Гб/с). Необходимо отметить, что, как и многие другие высокоскоростные технологии передачи данных (скажем, HyperTransport или PCI Express), InfiniBand масштабируется путем увеличения числа пар сигнальных проводников, так что для InfiniBand 4X достаточно всего двух пар (четырех проводников), для 8X нужны уже четыре пары, а для гипотетического 16X - целых восемь пар проводников.

На базе чипа InfiniScale III производятся достаточно простые 24-портовые 4X-коммутаторы, восьмипортовые 12X-коммутаторы, а также устройства, имеющие двенадцать 4X- и четыре 12X-порта.

Кроме того, в линейке продуктов Mellanox имеется и упомянутый выше модульный монстр общей производительностью 1,92 Тбит/с. Это устройство представляет собой шасси с пассивной шиной, в которое помещается до восьми интерфейсных (Leaf) модулей, до четырех модулей внутренней коммутации (Spine), до двух модулей управления и до двух блоков питания. Каждый из Leaf- и Spine-модулей снабжен все тем же чипом InfiniScale III, и различаются они лишь использованием этих портов. У Leaf-модуля двенадцать 4X-портов смотрят наружу и используются для подключения внешних устройств, а еще двенадцать внутренних портов служат для взаимодействия с шиной шасси. У Spine-модуля все 24 порта смотрят внутрь, подключаются к шине шасси и занимаются коммутацией данных между Leaf-модулями.

К сожалению, самым быстрым на сегодня вариантом InfiniBand является 12X, скорости которого явно недостаточно для объединения между собой столь мощных модульных коммутаторов. Конечно, можно прибегнуть к объединению нескольких каналов 12X в единый транк, но и такое решение выглядит явно половинчатым. Так что необходимость в создании еще более быстрых вариантов InfiniBand - налицо, благо вскоре ожидается принятие спецификации InfiniBand 2.0, обещающей повысить скорость передачи данных по одной паре вдвое, до 20 Гбит/с.

Напоследок скажем о ценах. Как ни странно, технология InfiniBand оказывается не столь уж дорогой: в США адаптер стоит чуть дешевле $1000, а за каждый порт коммутатора придется заплатить чуть менее $600.

Не только узлы и сеть...

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

Все активное смонтированное в шкафы оборудование Большого Мака (весом чуть меньше 20 т) расположилось в компьютерном зале примерной площадью около 1000 м^2, где поддерживается постоянная температура, влажность и имеется автоматическая система пожаротушения. Еще около 300 м^2 занимает находящийся в соседнем здании зал для операторов системы и сотрудников, непосредственно работающих с кластером.

Специально для электропитания кластера были построены две подстанции суммарной мощностью более 3 МВт. Кроме того, развернута система блоков бесперебойного питания и дизель-генераторов на 1,5 МВт.

Для монтажа пришлось использовать модифицированные 19-дюймовые шкафы, поскольку традиционные воздушные системы охлаждения не подошли. Простой предварительный расчет показал, что в случае классического воздушного охлаждения для отвода выделяемых системой двух с лишним миллионов BTU (в этих единицах измеряют выделяемую тепловую энергию) тепла пришлось бы создать воздушный поток с ураганной скоростью - 100 км/ч. В результате в шкафах с оборудованием были смонтированы воздушно-криогенные теплообменники компании Liebert (отделение компании Emerson Network Power), через которые для охлаждения циркулирующего в помещении воздуха прогоняется хладагент R-134A. Но и этим дело не ограничивается: понадобился второй (сдвоенный) контур охлаждения, на этот раз водяной. В каждой половинке контура имеется цистерна-радиатор со 125 т воды (где происходит охлаждение жидкости) и насос, прогоняющий воду с производительностью почти 3000 л/мин через теплообменники между первым и вторым контурами охлаждения.

Программное обеспечение

В отличие от большинства других "самодельных" кластеров, использующих ОС Linux, в Terascale Computing Facility применяется стандартная для Маков ОС Mac OS X. И дело здесь не в отсутствии Linux для Маков: базирующаяся на коде Red Hat Linux система Yellow Dog Linux компании Terra Soft давно и успешно работает на самых разных Маках, включая и Power Mac G5. Более того, именно ОС Yellow Dog Linux была установлена в 400-процессорном кластере на базе компьютеров Apple Xserve, недавно развернутом в одном из подразделений Военно-морского флота США для оперативного анализа спутниковых данных и выявления следов подводных лодок.

Однако в Virginia Tech поняли, что Mac OS X, базирующаяся на FreeBSD, ничем не уступает Linux, и решили создавать кластер на базе комплектной системы.

В качестве базового ПО для кластерных вычислений были выбраны библиотеки MPI-2, разработанные в Университете шт. Огайо и адаптированные для Power Mac G5 силами Virginia Tech и Argonne National Labs.

Основными компиляторами станут относительно традиционные GCC 3.3 и NAGWare Fortran, а также новейшие IBM xlc и xlf, дающие благодаря совершенной оптимизации кода заметный прирост производительности.

Наконец, для управления кластером и распределения задач между узлами для Terascale Computing Facility была адаптирована созданная в Virginia Tech при финансовом участии NSF система Deja vu, позволяющая обходить вышедшие из строя узлы кластера и восстанавливать утерянные при сбое данные. Такая возможность относительно безболезненного преодоления сбоев критически важна для серьезных суперкомпьютерных задач, когда циклы вычислений могут длиться много дней и даже месяцев...

Особенности

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

Есть у Большого Мака и еще одна довольно нестандартная для классических кластеров особенность. Ведь каждый из Power Mac G5 кроме всего прочего снабжен довольно мощным графическим акселератором ATI Radeon 9600 Pro, причем архитектура Mac OS X такова, что любая программа способна использовать адаптер для создания трехмерной картинки в любой области памяти, а не только на экране. В результате кластер может работать и как самая мощная в мире система визуализации сложных процессов.

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

Предварительные результаты

Теоретическая пиковая производительность Большого Мака составляет порядка 17 Тфлопс. Конечно, на практике эта цифра недостижима, причем, как и у любого кластера, фактическая производительность будет отличаться от теоретической очень и очень заметно, так что мечты о втором месте в суперкомпьютерной классификации (сразу после японского Earth Simulator с его 35,86 Тфлопс) следует оставить сразу.

Первые экспериментальные замеры, проведенные по методике top500 в конце сентября, дали результат в 7,41 Тфлопс, что оказалось чуть медленнее стоящего в текущем списке top500 на третьем месте ливерморского кластера MCR, построенного на базе 2304 процессоров Intel Xeon (7,634 Тфлопс). После первого же этапа оптимизации, завершившегося в самом начале ноября, результаты Большого Мака подскочили до 9,56 Тфлопс, что позволило обойти MCR, но еще недотягивает до "серебряного" результата лос-аламосского кластера ASCI Q (13,88 Тфлопс). А совсем недавно появились данные о достижении в 10,28 Тфлопс, что, впрочем, картины не меняет - правда, если забыть о возможности появления новых сильных игроков, которые тоже не теряли времени с момента публикации предыдущего списка top500.

Официальные данные соревнований

15 ноября был опубликован новый список top500. Подробно мы обсудим его в следующем номере, а пока сделаем лишь пару замечаний.

Первые два места по-прежнему занимают Earth Simulator и ASCI Q, которые не были нисколько модифицированы и потому сохранили те же результаты, а вот кластер MCR откатился с третьего места на седьмое.Terascale Computing Facility со своими 10,28 Тфлопс (на этот раз уже официальными) пришел к финишу третьим.

Несмотря на опасения создателей Terascale Computing Facility, "самодельным" кластерам, использующим напрямую конкурирующие с Apple PowerMac G4 платформы (Xeon, Itanium2 и Opteron), не удалось помешать торжеству Большого Мака - они заняли места с четвертого по шестое, не дотянув до заветных 10 Тфлопс: Tungsten на базе 2500 процессоров Xeon 3,06 ГГц продемонстрировал производительность 9,82 Тфлопс, Mpp2 на 1936 Itanium2 1,5 ГГц показал 8,63 Тфлопс, а Lightning c 2816 Opteron 2 ГГц набрал 8,06 Тфлопс, Обратите внимание - суммарное число процессоров во всех четырех конкурирующих кластерах примерно равно, так что налицо честное соревнование процессорных и коммуникационных архитектур.

Итог

Большой Мак, как и планировалось, начал работать 1 октября. Еще полтора месяца ушло на оптимизацию кластера, и к середине ноября система должна уже обслуживать "бета-клиентов" в тестовом режиме.Таким образом, на его создание ушло всего четыре месяца, тогда как типичное время развертывания системы подобного класса составляет около года. К 1 января ожидается полномасштабный ввод ее в строй.

В результате создания Terascale Computing Facility было установлено несколько рекордов:

· во-первых, никто и никогда не собирал систему подобной мощности в столь короткие сроки;

· во-вторых, Большой Мак стал самым мощным в мире "самодельным" кластером;

· в-третьих, впервые удалось создать столь недорогую систему с производительностью более 10 Тфлопс. Активное оборудование и заказные шкафы Большого Мака обошлись примерно в 5,2 млн. долл. Еще около 2 млн. долл. ушло на подготовку здания, по 1 млн. долл. - на системы охлаждения и бесперебойного электропитания. Монтажные работы были проведены студентами и сотрудниками Virginia Tech бесплатно. Итого: весь кластер обошелся примерно в 9,2 млн. долл., или около 900 долл. за 1 Тфлопс (при учете лишь активного оборудования цена опускается ниже 600 долл. за 1 Тфлопс!).

Для сравнения: самый быстрый в мире суперкомпьютер Earth Simulator стоил в момент его недавнего запуска более 250 млн. долл., или около 7000 долл. за терафлопс, т. е. в 10 раз дороже Большого Мака!

Есть ли у Большого Мака будущее? Почти наверняка, да. Интерес к этому проекту проявило множество компаний, в том числе и традиционные потребители процессорных мощностей из околовоенного сектора прикладной науки. В частности, засветились Агентство национальной безопасности и лос-аламосская лаборатория.

По последним данным, в Virginia Tech решили запатентовать использованные при построении Terascale Computing Facility решения, с тем чтобы несколько позже предлагать всем желающим готовые блоки Supercomputer Kits для создания кластеров высокой производительности.