Сейчас многие предприятия и учреждения приступают к строительству вычислительных кластеров. Создание такой системы сопряжено с целым рядом проблем и сложностей, многие из которых связаны с относительной новизной этой области и соответственно малым накопленным опытом. Вот об этих проблемах и сложностях мы беседовали с Борисом Тоботрасом, начальником вычислительного центра ФГУП «НИИ радио» (НИИР), где недавно был запущен первый в отрасли связи суперкомпьютер.
Intelligent Enterprise: Расскажите, какие задачи решает НИИР. И какова роль ИТ и высокопроизводительных систем в их решении?
Борис Тоботрас: НИИ радио — головной институт Министерства связи — основан в 1949 году. Всё, что имеет отношение к беспроводным технологиям в России, — родом отсюда. НИИР проектировал все советские спутники связи, и сейчас это направление возрождается. В последнее время одним из важных направлений деятельности института являются работы по научно-техническому обеспечению конверсии частотных диапазонов, передача под гражданские нужды тех из них, что были зарезервированы за военными.
Деятельность предприятия во многом связана с автоматизированным проектированием, и комплексы САПР весьма активно используются как в самом институте, так и в НТЦ информационных технологий. В НИИРе был создан вычислительный центр, в стенах которого впоследствии родился суперкомпьютер. Изначально предполагалось, что суперкомпьютер этот будет решать комплекс проблем, связанных с электромагнитной совместимостью.
Но впоследствии круг задач расширился, добавилось моделирование. А с этим так или иначе связана разработка всех технических решений, которыми занимается институт, будь то антенно-фидерные системы или радиоэлектронные устройства. В результате сейчас мы используем кластер в сквозном проектировании систем — задачи CAD/CAM/CAE требуют значительной вычислительной мощности.
Каковы были этапы в реализации проекта? Сколько человек участвовало в работе с каждой стороны?
Наш кластер строился в два этапа. Сначала была создана система производительностью порядка 1 Тфлопс/с, состоящая из 56 серверов SunFire X4100. На втором этапе создали систему в 3 Тфлопс/с из 50 серверов Sun Blade X8420. Все работы заняли чуть меньше года. Наиболее длительным был первый этап ввиду того, что пришлось решать задачи строительства инженерной инфраструктуры. Второй этап занял немного времени, поскольку дополнительные мощности устанавливались в уже подготовленную серверную комнату.
Учитывая, что это наш первый суперкомпьютер, этапность проекта помогла нам оценить потребности в его мощности. А часто бывает так, что из‑за первоначальной недооценки потребностей впоследствии мощности приходится расширять, что на самом деле не так‑то просто: нет помещений, нет возможности подвести электропитание требуемой мощности. Или наоборот — делают с чересчур большим запасом, затрачивая лишние материальные ресурсы. Нам удалось избежать и того и друго.
Со стороны исполнителя в работе принимала участие компания «Инфосистемы Джет». На стадии создания комплекса она была для нас системным интегратором-подрядчиком, на стадии эксплуатации — партнером, обеспечивающим техническую поддержку. А сегодня «Инфосистемы Джет» выступают в качестве консультанта при определении перспективных направлений развития комплекса. Со стороны вендоров проводилась экспертиза с целью определения, насколько оптимально применяются те или иные решения.
Поскольку проект долговременный, число участников с каждой стороны менялось в зависимости от его стадии. Сначала в нём участвовало порядка двадцати сотрудников компании «Инфосистемы Джет» — проектировщиков, инженеров, специалистов по внедрению ПО. Затем для поддержки комплекса осталась сервисная группа в составе трех человек. Со стороны НИИР участвовала группа управления проектом, затем были набраны специалисты по программированию и эксплуатации комплекса. На сегодняшний день комплекс обслуживают порядка двадцати сотрудников института.
Кластер НИИ радио не похож на другие. Он гетерогенный, на базе процессоров AMD, в нём используются четыре ОС. Чем это вызвано? Не страшно было делать не так, как все?
Я не согласен с тем, что наш кластер не похож на другие. Он построен по типовой схеме, по которой создается 98% всех таких систем. Это гетерогенная сеть из независимых компьютеров, каждый со своей копией операционной системы, и всё это связано кластерной сетью. Совершенно типовая архитектура.
Выбор процессоров AMD обусловлен наилучшим соотношением цены, производительности, энергопотребления и тепловыделения. И это был результат весьма тщательного расчета.
Другое дело, что у нас используется четыре операционные системы. Это связано с решаемыми задачами. Основная часть, отвечающая за вычисления, работает под управлением Sun Solaris. Для создания серверов баз данных ОС Linux подходит лучше, поэтому мы выбрали именно её. При этом мы используем две разные версии Linux, так что речь идет не об одной, а о двух системах. Впоследствии для решения определенных задач нам понадобилось часть отдать под управление Microsoft Windows. Но при этом система осталась гомогенной: каждый отдельный вычислительный кластер связывает системы на одной ОС.
Выбор Sun Solaris в качестве основной операционной системы тривиален: она просто была предустановлена. И мы ничего не стали менять, поскольку нас всё устраивало. Для нее есть неплохой набор библиотек, имеются все необходимые компиляторы, так что никаких неудобств сам факт использования этой системы не создавал. Ну а слухи о снижении быстродействия сильно преувеличены. Да, лет пятнадцать назад, в самом начале перехода от Sun OS к Sun Solaris, были некоторые проблемы, но сейчас всё уже далеко не так. Плюс ко всему быстродействие прикладной параллельной вычислительной задачи на 99% зависит от того, как ее запрограммировали, а от самой системы тут почти ничего не зависит.
Система мониторинга построена на базе продуктов семейства BMC Patrol — она устроила нас больше других решений, представленных на рынке.
Что было главным тормозом при строительстве кластера? Недостаток финансирования, необходимость переоборудования помещений, нехватка кадров или что‑то еще?
Совсем непредвиденных обстоятельств не было. Все участники процесса обладали довольно большим опытом построения кластерных систем. Но проблем и сложностей было много. Приходилось строго выдерживать временной график проведения работ, что не всегда было просто. С тем, что связано с ИТ, никаких проблем не возникало. Решения типовые и хорошо отработанные.
Довольно много проблем доставили строительные работы. Здание старое, и перекрытия никак не выдержали бы веса стоек с оборудованием. Пришлось устанавливать фальшпол с перераспределением нагрузки на стены, усиливать перекрытия и прибегать к целому ряду других специальных мер. При этом нельзя было допустить перерасхода средств и требовалось уложиться в сроки.
Сложностью стало обеспечение резервным электропитанием. Получить дополнительные 90 кВт мощности почти в центре Москвы оказалось весьма нетривиальной задачей.
Безусловно, есть и кадровая проблема. Но у нас был запас примерно в год, в течение которого велись работы по строительству. За это время мы нашли инженерный персонал, знакомый с эксплуатацией и администрированием подобных систем. Были взяты на работу программисты, и они успели получить навыки разработки систем параллельных вычислений. Плюс обучение уже в процессе работы, так что опыт накоплен уже довольно приличный. В отличие от других бюджетных учреждений мы можем предложить адекватный уровень заработной платы. Другим в этом отношении может быть сложнее.
Как организована инженерная инфраструктура? Использовались ли какие‑нибудь нестандартные и нетипичные решения?
Мы старались, чтобы решение было максимально стандартным. Использовались продукты лидеров рынка, хорошо себя показавшие. Так что ничего нетипичного мы не применяли. Главное было грамотно всё спроектировать, развернуть и добиться, чтобы это заработало.
Когда строилась серверная комната, было развернуто несколько инженерных систем. У нас две системы бесперебойного электропитания от компании Powerware, установленные на двух этажах. Одна предназначена для питания самого кластера, другая обслуживает систему кондиционирования. Обе они построены с небольшим запасом по мощности — около 25%. Подведено резервное питание. В принципе наш кластер рассчитан на весьма высокий уровень доступности, хотя на практике таких задач пока не возникало. Но тем не менее мы к этому готовы.
Система охлаждения также спроектирована с запасом по тепловой мощности. В основной серверной комнате расположены три кондиционирующих модуля. Причем один из них всегда можно вывести на регламентное обслуживание, двух оставшихся вполне достаточно для поддержания необходимого микроклимата. Использовалось оборудование компании Liebert.
Система охлаждения — чисто воздушная. Для имеющейся плотности упаковки ее оказалось вполне достаточно. Кстати, это еще один повод оценить преимущества систем на базе AMD Opteron. Хотя при выборе платформы это преимущество и не было решающим. Воздушная система, на наш взгляд, надежнее и проще в эксплуатации, а водяная намного тяжелее. А ведь даже для того, что есть, нам пришлось вести комплекс строительных работ.
Насколько сложен был процесс портирования приложений? И справедливо ли утверждение, что ПО для подобных систем проще переписать заново?
В основном мы используем ПО собственной разработки. Отчасти это то, что раньше использовалось на ПК, но потом было перенесено на кластер, отчасти — то, что разрабатывалось заново, с учетом работы на кластере. Сложности в процессе переноса ПО безусловно есть: требуются изменения в алгоритмах. Но с другой стороны, процесс переноса приложений понятен и неплохо отработан. «Белых пятен» нет, и заниматься научной работой программистам почти не приходится. Методика ясна, грубо говоря, она выглядит так: берется задача, в ней ищутся параллельные блоки, и пишется вариант этой самой задачи, адаптированный под модель параллельных вычислений.
Но с тем, что приходится писать заново, совсем не так. Основной объем работ приходится на алгоритмизацию, и заново их никто проделывать не будет. Никто не будет опять разрабатывать методики вычислений, менять интерфейсы и форматы данных. Проектировать заново придется лишь непосредственно вычислительную часть с учетом возможности распараллеливания процессов.
В целом мы используем то, что наработано в индустрии. Это стандарты протоколов, стандарты ПО, в том числе свободного, и всё, что наработано вокруг grid-технологий. Могу посоветовать осмотреться, поучиться у тех, кто начал раньше, и затем использовать на реальных задачах. Все это позволит действительно начать работать. Если бы нам пришлось придумывать всё с нуля, было бы очень тяжело.
Каковы перспективы и планы использования вычислительного центра НИИР?
Сегодня у нас существуют два перспективных направления развития центра. Первый из них связан с усилением его прикладной функциональности, с ее расширением на все области деятельности ФГУП НИИР, где такая система целесообразна. Это, во‑первых, расчет объектовой электромагнитной совместимости — взаимного влияния электромагнитных полей различных излучающих и приемных устройств путем прямого решения уравнений электромагнитного поля. Во-вторых, расчет зон покрытия электромагнитного излучения диапазона 0,1—5 ГГц — условий приема сигналов от различных систем телекоммуникации (телевидение, Tetra, WiMAX, 3G—4G и др.) с целью оптимизации их размещения. В‑третьих — поддержка процессов проектирования и оптимизации создания электронных приборов и их элементной базы, а также общетехническое конструирование устройств.
Кроме того, интересным является использование ресурсов ВЦ НИИР как экспериментальной площадки для создания элементов национальной grid-инфраструктуры. Речь идет о формировании комплекса мероприятий по её созданию, разработке целевых индикаторов и показателей, ресурсной оценке, разработке архитектуры, а также принципов и решений по построению высокоскоростной телекоммуникационной инфраструктуры для задач grid.
Наша задача — использовать комплекс высокопроизводительных вычислений с максимальной пользой не только в интересах самого ФГУП НИИР, но и с привлечением самых разных организаций. Технология grid имеет хорошие перспективы, и ФГУП НИИР стремится быть в числе лидеров ее развития в России.