Суперкомпьютерные и GRID-технологии

Абрамов С.М. (ИПС РАН, Россия) Велихов П.Е. (SDSC, США) Московский А.А. (ИПС РАН, Россия) Роганов В.А. (ИПС РАН, Россия)

Данная работа посвящена обзору суперкомпьютерных и GRID-технологий. Рассматриваются общие вопросы, связанные с данной областью. Особенное внимание уделяется работам, выполняемым (или планируемым к выполнению) в Институте программных систем Российской академии наук.

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

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

Вокруг попыток дать определение термина "суперкомпьютер" всегда было много споров. Мы будем придерживаться следующего: компьютеры, включенные в некоторую редакцию мирового рейтинга пятисот самых мощных машин мира (Top500, [1]), безусловно, заслуживают применения к ним термина "суперкомпьютер". Рейтинг Top500 ведется с июня 1993 года и обновляется два раза в год (в июне и в ноябре). Для ранжирования вычислительных установок в рейтинге Top500 используется некая процедура вычисления "реальной производительности" на тестовой задаче (программе) Linpack. Получаемые при этом оценки производительности мы в данной работе будем называть Linpack-производительностью. Тест Linpack по своей сути сводится к решению системы линейных уравнений с большим числом переменных.

Существуют различные подходы к достижению высокой вычислительной мощности (производительности) вычислительных установок. Хороший обзор таких подходов можно найти в работе [2]. В последнее время все большую популярность завоевывают архитектуры MPP и кластерный принцип построения суперкомпьютеров:

1.1. Отечественные суперкомпьютеры

За всю историю развития отечественной суперкомпьютерной отрасли только четыре вычисли-тельные установки - MВС-1000M, MВС-5000БM, СКИФ К-500, СКИФ К-1000, - смогли попасть в мировой рейтинг Top500, четыре раза отечественные установки входили в "первую сотню" мирового рейтинга (MВС-1000M - 3 раза, СКИФ К-1000 - 1 раз), подробнее смотри Таблицу 1 и Рисунок 1. Эти суперкомпьютеры разрабатывались и изготавливались:

Полное название Программы: "Разработка и освоение в серийном производстве семейства моделей высокопроизводительных вычислительных систем с параллельной архитектурой (суперкомпьютеров) и создание прикладных программно-аппаратных комплексов на их основе".

С одной стороны, вхождение в список Top500 отечественных вычислительных установок говорит о том, что мы владеем технологиями, которые доступны только весьма ограниченному списку стран:

С другой стороны, всего четыре суперкомпьютера за два с половиной года - это прискорбно мало для такой страны как наша. Для примера, только в текущей редакции Top500 (ноябрь 2004 года) включено 17 установок, установленных в КНР, причем три из них входит в "первую сотню".

Таблица 1. Отечественные суперкомпьютеры в мировом рейтинге Top500

Суперкомпьютер

МВС-1000М

СКИФ К-500

МВС-5000БМ

СКИФ К-1000

Разработчики и изготовители: ФГУП "Квант", ИПМ РАН, МСЦ Суперкомпьютерная программа "СКИФ" Союзного государства. ОИПИ НАН Беларуси (Минск), НИИ ЭВМ (Минск), Т-Платформы (Москва), ИПС РАН (Переславль-Залесский) ФГУП "Квант", ИПМ РАН, МСЦ Суперкомпьютерная программа "СКИФ" Союзного государства. ОИПИ НАН Беларуси (Минск), НИИ ЭВМ (Минск), Т-Платформы (Москва), ИПС РАН (Переславль-Залесский)
Завершение изготовления: июнь 2002 года сентябрь 2003 июнь 2004 г., модернизация: сентябрь 2004 г. сентябрь 2004
Место установки: Межведомственный суперкомпьютерный центр (МСЦ, Москва, Президиум РАН) Объединенный инсти-тут проблем информа-тики (ОИПИ НАН Беларуси, Минск) Межведомственный суперкомпьютерный центр (МСЦ, Москва, Президиум РАН) Объединенный инсти-тут проблем информа-тики (ОИПИ НАН Беларуси, Минск)
Пиковая / Linpack-производительность (млрд. операций в се-кунду): 1 024 / 564
с сентября 2002
1 024 / 734.6
716.8 / 423.6 1 075.2 / 722.1
с сентября 2004:
2 112 / 1 401
2 534.4 / 2 032
Тип процессора / Тип системной сети: Alpha EV67 667 MHz / Myrinet
Pentium IV Xeon 2.8 GHz / SCI 3D IBM eServer BladeCen-ter JS20 PowerPC970 1.6 GHz / Myrinet AMD Opteron 2.2 GHz / Infinivand
Число узлов / число процессоров: 384 / 768 64 / 128 84 / 168
с сентября 2004:
168 / 336
288 / 576
Mестo / выпуск рейтин-га Top500: 64 / июнь 2002 г.
74 / ноябрь 2002 г.
95 / июнь 2003 г.

189 / ноябрь 2003 г.
392 / июнь 2004 г.
407 / ноябрь 2003 г. 399 / июнь 2003 г.
210 / ноябрь 2004 г.
98 / ноябрь 2004 г.

 

ris1.jpg (11024 bytes) ris2.jpg (5148 bytes)
MВС-1000M
СКИФ К-500
ris3.jpg (9486 bytes) ris4.jpg (5162 bytes)
СКИФ К-1000
MВС-5000БM
Рис. 1. Внешний вид суперкомпьютеров МВС 1000М, СКИФ К-500 и СКИФ К-1000, МВС 5000БМ

1.2. Области применения суперкомпьютеров

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

Чтобы дать представление о широте использования суперкомпьютеров сегодня, перечислим области, в которых использовались вычислительные установки, создаваемые по суперкомпьютерной программе "СКИФ" Союзного государства:

Отметим, что данный список касается работ по весьма скромной по бюджету и продолжительности программе.

1.3. Проблемы суперкомпьютерной отрасли

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

2. GRID-технологии

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

2.1. Основные идеи GRID-систем

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

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

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

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

На основе GRID-технологий можно создавать мощные информационно-вычислительные среды, обладающие также уникально низким соотношением "эксплуатационные расходы/производительность", за счет повышения коэффициента использования всей совокупности ресурсов, включенных в GRID-сеть. Например, средняя загрузка 6000 процессоров собственной GRID-сети компании Sun Microsystems, находящейся в эксплуатации, составляет 98%, в то время как ПК-серверы используются в среднем на 5-20%.

2.2. Различные аспекты интеграции ресурсов в GRID-системах

Итак, основная идея GRID-систем - интеграция ресурсов, и здесь важно помнить, что ставится задача интеграции самых различных ресурсов, включаемых в систему:

В оставшейся части статьи особое внимание будет уделено первым двум аспектам: интеграция вычислительной мощности и интеграция источников данных (интеграция баз данных).

2.3. Развитие работ по GRID-технологиям за рубежом

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

В настоящее время практически в каждой развитой стране развернуты национальные GRID-проекты, имеющие целью создание соответствующей инфраструктуры и развитие технологий, обеспечи-вающих удаленный доступ к разнообразным вычислительным ресурсам независимо от места расположения потребителя (например, подобную программу недавно приняла Болгария).

В Европе все работы по этой технологии координируются в рамках проекта Data GRID (в него уже вложено 9,8 млрд. евро), а в Великобритании для разработок по GRID создан отдельный государственный орган.

Объем инвестиций в GRID-проекты с 2003 по 2008 гг. вырастет по прогнозам в 20 раз (с 250 млн. до 4,9 млрд. долларов США).

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

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

В США созданы четыре мощные национальные сети, обслуживающие основные учреждения, занятые научными исследованиями и информационным обслуживанием - "Компьютерная сеть национального фонда исследований" (NSF Computational Grid), "Информационная сеть поддержки НАСА" (NASA Information Power Grid), "Глобальная информационная сеть Министерства обороны" (DOD Global Information Grid), "Сеть суперкомпьютерной Инициативы Министерства энергетики" (DOE ASCI Grid).

В частности проект ASCI Grid, объединяющий три самых мощных суперкомпьютера программы ASCI, предназначен в первую очередь для обеспечения расчетов, необходимых при решении задач совершенствования и поддержки боевого ресурса ядерных зарядов без проведения натурных испытаний (ядерных взрывов).

Под руководством Пенсильванского университета на базе GRID-технологии создан Национальный цифровой центр маммографии с объемом хранимых данных 5.6 петабайт (5.6 1015), что позволяет тысячам больниц и госпиталей хранить маммограмы в цифровой форме, а медицинским специалистам получать практически мгновенный доступ к записям пациентов.

В компании Sun Microsystems находится в эксплуатации собственная GRID-сеть, включающая 6000 процессоров и 210 Тбайт данных, которая ежедневно обсчитывает более 50 000 задач электронного проектирования.

В 2004 году в США объявлена президентская стратегическая GRID-программа (Strategic Grid Computing Initiative), основной целью которой является создание единого национального пространства высокопроизводительных вычислений (National High Performance Computing Environment). Американские эксперты оценивают инвестиции в создание высокопроизводительных компьютерных сетей стратегическим вкладом государства в ускоренное развитие своего научно-технического, промышленного и оборонного потенциала.

Самым последним подтверждением значимости развития GRID-технологий на базе суперкомпьютерных систем явилось принятие 30 ноября 2004 года Сенатом США закона 108-423 о создании при Министерстве энергетики Центра высокопроизводительных вычислительных систем (High-End Software Development Center) с бюджетным финансированием на период 2005-2007 годы в объеме 165 млн. долларов.

Основными задачами этого Центра являются:

По положению закона этот Центр должен координировать свои усилия в области разработки математического обеспечения для высокопроизводительных вычислительных систем с другими федеральными агентствами и ведомствами США, такими как: Национальный научный фонд; Агентство перспективных оборонных исследований и проектов; Национальная администрация ядерной безопасности; Агентство национальной безопасности; Национальное агентство по авиации и космонавтике; Национальная администрация по исследованию мирового океана и атмосферы; Национальный институт стандартов и технологий; Агентство по охране окружающей среды; Национальные институты здравоохранения, что в целом показывает масштабы развернутых в США работ по созданию высокопроизводительных вычислительных систем и разработки GRID-технологий.

GRID-технологии также планируется широко использовать как одно из главных (системообразующих) средств в борьбе с современными вызовами и угрозами. Так, например, GRID-технологии планируется применять в системах идентификации личности по биометрическим параметрам, которые будут включать в себя базы биометрических данных и аппаратные средства снятия и обработки биометрической информации в реальном масштабе времени на базе высокопроизводительных гетерогенных распределенных GRID-систем. Эти проекты осуществляются для контроля за перемещениями иностранцев через границы США и стран Западной Европы, а также для сбора биометрической информации на всех "подозрительных" граждан этих стран и стран, входящих в список так называемой "оси зла", что обусловлено, в первую очередь, необходимостью противостояния мировому терроризму и необходимостью борьбы с криминальным оборотом наркотиков и распространением оружия.

В Китае с 2000 года ведутся работы по освоению GRID-технологий и к настоящему времени в единую сеть высокопроизводительных вычислений объединены основные научно-производственные центры страны, расположенные в четырех провинциях.

2.4. Инфраструктура для реализации GRID-технологий

Для создания GRID-систем необходимо развивать соответствующие инфраструктуры: это суперкомпьютерные центры и центры данных, а также высокоскоростные национальные системы передачи данных. В большинстве стран в качестве телекоммуникационной платформы для GRID-проектов часто используются сети для науки и образования (Science & Education Networks), среди которых необходимо отметить:

Особое место среди сетей для науки и образования занимает сеть GLORIAD (Global Ring Network for Advanced Applications Development, [6]). Это волоконно-оптическое кольцо, опоясывающее северное полушарие Земли, призвано объединить между собою национальные научно-образовательные сети России, Китая и США. Сеть Global создана в 2003 году по инициативе академика Е.П. Велихова. Сейчас рассматривается вопрос вхождения в проект национальных научно-образовательных сетей еще нескольких стран. Сегодня GLORIAD обеспечивает емкость каналов 155 Mbps, планируется расширение данной емкости до 10 Gbps.

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

2.5. GEMS: интеграция баз данных

Средства интеграции источников данных (интеграция баз данных) ИПС РАН разрабатывает в проекте GEMS (Grid-Enabled Mediation Service), который выполняется в кооперации с суперкомпьютерным центром Сан-Диего и Институтом системного программирования Российской академии наук (ИСП РАН).

Цель проекта - разработка и реализация системы интеграции данных и приложений, основанная на открытых стандартах (XML и GRID) и на следующих ключевых идеях:

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

2.6. Т-система: интеграция вычислительных мощностей

Т-система - система параллельного программирования, реализующая концепцию автоматического динамического распараллеливания программ. Разработка и первые подходы к реализации Т-системы были выполнены в ИПС РАН в 1994-1999 годах. С 2000 года развитие и реализации Т-системы подключились новые группы исследователей, в первую очередь из МГУ им. М.В. Ломоносова.

Реализованная сегодня версия Т-системы - Open T-System, OpenTS, - является в некотором смысле надстройкой над C++/MPI. Программы для OpenTS пишутся на языке Т++, который является диалектом (расширением) языка C++. Программист при этом освобожден от таких работ для организации параллельного выполнения Т-программ, как:

Все указанные выше действия выполняет Т-система без участия программиста (автоматически). Причем эти действия определяются и выполняются в динамике, во время исполнения программы (а не планируются заранее, в статике, во время компиляции).

Для дальнейшего очень важны будут следующие свойства Т-системы:

Эти свойства сделали перспективными попытки использования Т-системы не только для кластеров, но и для метакластерных установок и для территориально-распределенных неоднородных установок. По сути, имелись предпосылки для того, чтобы попробовать использовать Т-систему в качестве подхода к реализации интеграции вычислительных мощностей в GRID-системах.

Предпосылкой и базисом для развития данного подхода явились созданные в рамках программы "СКИФ" кластерные и метакластерные конфигурации широкого диапазона производительности, а также технологии динамического распараллеливания вычислений (OpenTS), мониторинга и управления (Flame) кластерными и метакластерными конфигурациями. При этом для поддержки метакластерных передач данных удалось использовать различные реализации MPI: MPICH-G2, IMPI, PACX-MPI. Первые эксперименты по метакластерным вычислениям, проведенные в рамках программы "СКИФ", показали, что эти технологии могут быть расширены до полноценных GRID-решений.

2.7. T-GRID: испытательный стенд для отработки использования Т-системы для интеграции вычисли-тельных мощностей в GRID-системах

Отработка технологии использования OpenTS в качестве основы для интеграции вычислительных мощностей в GRID-системах в ИПС РАН организован испытательный стенд - T-GRID. При этом:

Для поддержки разнородных вычислительных ресурсов (Windows-серверы, Linux-серверы, кластеры) и для упрощения управлением системой используется механизм виртуальных машин. В каждой реальной машине, часть ресурсов которой решено использовать в системе T-GRID, реализуется виртуальная машина с OS Linux. При этом для Windows-серверов используется Cooperative Linux, для Linux-серверов используется UML. Далее в систему T-GRID уже объединяются эти самые виртуальные Linux-машины.

Такой подход, среди прочего, решает проблему "отчуждения" ресурсов в GRID-систему. Передавая какие-то ресурсы в T-GRID, соответствующий администратор сервера и организация-владелец сервера передают всего лишь "виртуальную часть" сервера, сохраняя за собою все административные права на сервере и не передавая администраторам T-GRID ничего, сверх обычных (непривилегированных) пользовательских прав.

3. Перспективы развития работ

Первые результаты, полученные по проектам GEMS и T-GRID, оказались достаточно обнадеживающими. Поэтому в планы ИПС РАН входит продолжение работ по данным проектам. В сотрудничестве ИПС РАН с белорусскими и российскими организациями были подготовлены предложения по формированию новой суперкомпьютерной программы Союзного государства "Разработка и использование программно-аппаратных средств ГРИД-технологий и перспективных высокопроизводительных (супер-компьютерных) вычислительных систем семейства "СКИФ" (шифр "СКИФ-ГРИД")", включающие че-тыре направления работ:

4. Благодарности

Работы, положенные в основу данной статьи, были выполнены в рамках:

Особую благодарность авторы выражают академику-секретарю ОИВТС РАН, академику Е.П. Велихову за его интерес, помощь и поддержку наших работ в области суперкомпьютерных и GRID-технологий. Авторы благодарны всем участникам суперкомпьютерной программы "СКИФ" (особенно белорусским коллегам - С.В. Абламейко, В.В. Анищенко, Н.Н. Парамонову, О.П. Чижу и др.), с которыми авторов связывает опыт плодотворной и успешной работы в программе "СКИФ". Надеемся, это сотрудничество будет продолжено и дальше, в рамках программы "СКИФ-ГРИД".

Список литературы

  1. TOP500 Supercomputer Sites - мировой рейтинг пятисот самых мощных компьютеров мира // Информационный ресурс в сети Интернет, http://www.top500.org/
  2. Воеводин В.В., Воеводин Вл. В. Параллельные вычисления // БХВ-Петербург, СПб., 2002, 609 с.
  3. Message Passing Interface Forum // Информационный ресурс в сети Интернет, http://www.mpi-forum.org/
  4. The GEANT Website // Информационный ресурс в сети Интернет, http://www.geant.net/
  5. Магистральная сеть науки и образования RBNet (Russian Backbone Network) // Информационный ресурс в сети Интернет, http://www.ripn.net:8081/rbnet/
  6. Global Ring Network for Advanced Applications Development (GLORIAD) // Информационный ресурс в сети Интернет, http://www.gloriad.org/
  7. Абрамов С.М., Адамович А.И., Инюхин А.В., Московский А.А., Роганов В.А., Шевчук Е.В., Шевчук Ю.В. Т-система с открытой архитектурой // Труды Международной научной конференции "Суперкомпьютерные системы и их применение. SSA'2004", 26-28 октября 2004 г. Минск, ОИПИ НАН Беларуси, с. 18-22
  8. Абрамов С.М., Адамович А.И., Коваленко М.Р. Т-система - среда программирования с поддержкой автоматического динамического распараллеливания программ. Пример реализации алгоритма построения изображений методом трассировки лучей // Программирование, 1999, том 25 (2), стр. 100-107, 1999 No 25(2).