[Главная] ПСПА лаб. ] "Ботик" лаб. ] АП лаб. ] [ ПО и АС мультипроцессорных систем ] Региональные компьютерные сети. ] Метавычисления, функциональные языки программирования ] Исследование задач малой размерности ] Сотрудники ] Публикации ]

Программное обеспечение и аппаратные средства мультипроцессорных систем

Тематика высокопроизводительных вычислений и мультипроцессорных систем была одной из основных тематик Института программных систем РАН. Если угодно -- исследования в этом направлении были одной из целей создания Института. В работах по данной тематике можно выделить несколько этапов:

Остановимся на некоторых результатах, полученных в данных работах.

1993-1994 годы

(2) В каждом транспьютере, как правило, поддерживалось 4 канала, однако, существовали транспьютероподобные системы с иным количеством каналов в узле.

Работа с транспьютерными системами накладывает свой отпечаток на исследования: ведется разработка алгоритмов маршрутизации сообщений в транспьютерных сетях (многое заимствуется из работ с ЕС 2704 [1-87, 2-87, 1-88, 1-89, 1-91], развивается теория расчета оптимальной конфигурации мультипроцессорной системы по заданному составу вычислительных модулей. В последнем случае речь идет о минимизации транзитных передач, устойчивости к отказам и обеспечении равномерности загрузки каналов. Оказывается, что при заданной "валентности" вычислительных узлов транспьютерной сети, то есть, при заданном числе каналов в узле транспьютероной сети(2), оптимальной конфигурацией являлись графы с минимальным диаметром. Отметим, что традиционные архитектуры (многомерные торы, гиперкубы, деревья и т. п.) сильно уступают графам с минимальным диаметром по устойчивости к отказам, поддержке равномерности загрузки каналов и минимизации транзитных передач. Для исследования графов с минимальными диаметрами был реализован комплекс программных средств (лаборатория ПСПА и ЗМР). В сотрудничестве лабораторий ПСПА и "Ботик" в это время ведутся исследования по возможности ускорения связи ПЭВМ при помощи RS-232, разработано и реализовано коммутационное оборудование для связи между собой ПЭВМ класса IBM PC.

1995 год

В рамках работ по транспьютерной тематике была выполнена разработка оригинальной интерфейсной платы для IBM PC на основе транспьютера Т425 (Пономарев А. Ю., Шевчук Ю. В., Позлевич Р. В.). Разработанная плата [1-94] обеспечивает сопряжение персонального компьютера с аппаратурой на основе транспьютеров: с вычислительной транспьютерной сетью или с аппаратурой сбора экспериментальных данных на базе транспьютеров. Интерфейс с компьютером был построен по принципу разделяемой памяти -- это решение обеспечило скорость передачи данных до 5 Мбайт/сек на шине ISA, что приблизительно на порядок превосходило параметры всех существовавших в то время транспьютерных плат, использующих метод программного обмена через интерфейсный чип С011.

В это же время был завершен перенос [1-96] свободного копилятора GNU С Compiler на архитектуру транспьютеров семейств Т4, Т8 и Т9 (Шевчук Ю. В.). Интересно отметить, что заключительная отладка и тестирование компилятора была осуществлена в удаленном режиме на установке GCel фирмы Parsytec в High Performance Computing Laboratory в Афинах (Греция). Тестирование показало, что по качеству генерируемого кода компилятор не уступает коммерческому компилятору АСЕ, входящему в состав ОС Parix. Показательно, что эти результаты почти десятилетней давности до сих пор пользуются успехом и разработанной системе посвящен раздел в архиве [2-96]. В 1995 году впервые четко сформулированы базовые принципы Т-системы - системы программирования, обеспечивающей автоматическое распараллеливание программ на этапе выполнения программ в мультипроцессорных вычислительных системах с распределенной памятью [1-93, 2-94] (Абрамов С. М., Нестеров И. А., Суслов И. А., Пономарев А. Ю., Шевчук Ю. В., Позлевич Р. В., Адамович А. И.). В качестве входного языка системы рассматривались диалекты известных языков программирования, с небольшим количеством дополненных специальных конструкций и функционально-ориентированных ограничений [1-95]. Возможность автоматического распараллеливания основывается на представлении вычислений в виде автотрансформации вычислительной сети, состоящей из процессов и обрабатываемых данных. Выполнена первая экспериментальная реализация Т-системы.

Было выполнено исследование применимости методов автоматического распараллеливания к основным алгоритмам вычислительной математики (Нестеров И. А., Суслов И. А.). Показано, что представление характерных для вычислительной математики структур данных возможно на основе специальных списковых структур, используемых при реализациях Т-системы, что не приводит к существенной потере производительности [2-95].

Первые прототипные программные реализации для экспериментов с Т-системой создавались в среде MS DOS. Именно в 1995 г. начились работы по использованияю ОС Linux и локальных сетей UNIX-станций в качестве платформы для Т-системы (Адамович А. И., Позлевич Р. В., Шевчук Ю. В.). Была разработана сетевая компонента Т-системы, обеспечивающая возможность распределенной загрузки задачи и внутризадачного обмена управляющими и инфромационными сообщениями.   С использованием проведенной реализации изучены скоростные показатели межпрограммных внутризадачных обменов сообщениями.

1996-1997 годы

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

Для поддержки отладки Т-программ пришлось решать проблему отсутствия повторяемости трассы вычислений от запуска к запуску, обусловленной асинхронным характером взаимодействия компонент Т-системы. Был разработан метод отладки, основанный на принципе "повторения трассы выполнения" (Адамович А. И.).

Версия ядра Т-системы, разработанная с использованием найденных алгоритмов и методов, была опробована и отлажена в процессе реализации реальной параллельной задачи построения реалистических изображений виртуальных сцен методом трассировки лучей. Был проведен эксперимент по выполнению данной задачи в монопроцессорном режиме, а также на локальной сети (10Base-2) из четрырех одинаковых однопроцессорных ПЭВМ, работающих под управлением ОС Linux (Адамович А. И., Коваленко М. Р.). Результаты счета на одном, двух, трех и четырех процессорах показывают, что при низком (1.5-3%) уровне накладных расходов (по сравнению с традиционной непараллельной реализацией) Т-система обеспечивает для данной задачи линейный рост производительности в зависимости от числа процессоров [2-95, 1-99, 2-99, 3-99, 4-99].

1998 год

В начале 1998 года был реализован программно-аппаратный мультипроцессорный комплекс (См. рисунок 1), в котором использовались различные по конфигурации вычислительные узлы (всего 24 процессора Intel PPro-200 и P-II-266, пиковая производительность 5,6 GFlops, RAM 1.4 GB, HDD 70.4 GB). Заметим, что вычислительные узлы данной установки были первыми компьютерами в ИПС РАН с архитектурой SMP. Данная техника позволила разработать и поддержать в Т-системе различные платформы класса "IP-сеть из Intel-совместимых компьютеров с ОС Linux, в том числе с SMP-архитектурой". Весной того же года на языке Рефал Плюс был реализован первый компилятор для Т-языка - это было негладкое синтаксическое расширение языка C. Так была завершена разработка первой стабильной прототипной версии Т-системы.

Рис. 1. ИПС РАН, 1998 год, высокопроизводительный вычислительный комплекс

За первые полгода опытной эксплуатации в ИПС РАН мультипроцессорного комплекса (см. рисунок 1) с Т-системой были реализованы 10 задач из различных прикладных областей, имеющих различную алгоритмическую природу [1-99, 2-99, 4-99]. На данных задачах были исследованы свойства Т-системы и практически продемонстрированы важнейшие свойства данного подхода к организации параллельных вычислений:

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

В мае 1998 года состоялись первый визит в Минск в НПО "Кибернетика" НАН Беларуси и первые контакты с белорусскими коллегами по тематике высокопроизводительных вычислений. В Минске присутствовали представители московской фирмы "Суперкомпьютерные системы" (СКС) и сотрудники ИПС РАН (Абрамов С. М. и Коваленко М. Р.). Фирма СКС демонстрировала макетный образец однородной вычислительной среды (ОВС), изготовленый на базе микросхем, выпущенных на предприятии "Интеграл" (Минск). Представители ИПС РАН демонстрировали Т-систему и прикладные Т-программы. Обе демонстрации получили положительную оценку у Президента НАН Беларуси Войтовича А. П.

Для более подробного изучения возможной кооперации был намечен ответный визит, который состоялся 5-12 июня 1998 года. В конце визита Войтович А. П., Айламазян А. К. и Татур В. Ю. подписали 12 июня 1998 года трехстороннее соглашение о кооперации в области высокопроизводительных вычислений. Это был первый шаг к формированию суперкомпьютерной программы "СКИФ" Союзного государства.

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

После возвращения в Минск, Войтович А. П. доложил главе Республики Беларусь о результатах первых контактов и о возможном сотрудничестве между Россией и Беларусью в суперкомпьютерной отрасли. Эти идеи нашли горячую поддержку на высшем государственном уровне Беларуси. Было выделено целевое финансирование, создан временный научный коллектив, целью которого было исследование всех аспектов возможного сотрудничества и формирование (подготовка) совместной программы "СКИФ" Союзного государства(3). К концу 1998 года временный научный коллектив завершил свою работу, текст совместной программы "СКИФ" был сформирован. После этого весь 1999 год ушел на согласование программы в министерствах и ведомствах. С осени 2000 года началась реальная работа по выполнению Программы "СКИФ".

1999 год

Для поддержки эффективной работы Т-системы на SMP-узлах разработана и реализована система управления разделяемой памятью, обладающая следующими особенностями:

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

В это же время продолжались развитие Т-языка, программирование в Т-системе демонстрационных и реальных прикладных задач (в сотрудничестве с лабораторией ЗМР), опытная эксплуатация кластера (См. рисунок 1).

В таком инициативном порядке работы по Т-системе развивались до конца лета 2000 года - до начала финансирования суперкомпьютерной программы "CКИФ" Союзного государства.

2000-2004 годы, период исполнения суперкомпьютерной программы "СКИФ" Союзного государства

Первые пять лет нового века работы лаборатории ПСПА проходили в рамках исполнения суперкомпьютерной программы "СКИФ" Союзного государства. Институт программных систем Российской академии наук является головным исполнителем по программе "СКИФ". Работы по созданию аппаратных и программных средств для семейства суперкомпьютеров "СКИФ" ИПС РАН ведет в тесном сотрудничестве с исполнителями от Республики Беларусь и с основными исполнителями Программы со стороны России:

Во время выполнения Программы "СКИФ" были разработаны две новые версии Т-системы (в сотрудничестве с МГУ им. М.В. Ломоносова):

Остановимся еще на двух разработках, выполненых в ИЦМС ИПС РАН в рамках Программы "СКИФ" - речь идет об отладчике TDB и о сервисной сети для кластерных установок.

Отладчик MPI-программ TDB создавался как некоммерческая альтернатива отладчику TotalView. То есть, при разработке ставилась цель поддержать в TDB все возможности отладчика TotalView. Это удалось в достаточно полной мере. Кроме того, в TDB предусмотрен расширенный сервис при отладке Т-программ. Первая версия отладчика TDB успешно прошла приемочные (государственные) испытания (3-6 декабря 2002 года, г. Минск) с присвоением литеры O1. В настояще время выполняются работы по расширению возможностей отладчика TDB.

Разработка сервисной сети [4-03] для кластерных систем семейства "СКИФ" выполнено силами лабораторий ПСПА и "Ботик". Разработка интересна тем, что удалось небольшим аппаратным изделием поддержать достаточно богатый набор возможностей. Характеристики управляющей сети приведены в документе "Управляющая сеть кластеров "СКИФ" на сайте skif.pereslavl.ru. С помощью управляющей сети кластера можно:

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

  1. Упомянутые выше возможность работы с Linux serial console вычислительного узла и удаленной работы в режиме BIOS Setup.
  2. Возможность управления загрузчиком (LILO) операционных систем вычислительного узла. На сериальную консоль может быть сконфигурировано управление LILO и, если на узлах установлено несколько различных операционных систем, то можно с управляющей станции выбрать тип ОС, загружаемой на каждом узле и таким образом на всем кластере (или на части узлов) может быть загружена та или иная ОС (из предустановленных на узле).
  3. Возможность менять параметры загрузки ядра Linux на каждом узле.
  4. Возможность "посмертного" просмотра некоторого количества последних строк (до 4 Кбайтов), выведенных на сериальную консоль. При "зависании" вычислительной системы, когда уже не работают ни системная, ни вспомогательная сети кластера, в независимой памяти адаптера управляющей сети сохраняется информация о состоянии системы перед "зависанием". Таким образом, с управляющей станции можно восстановить картину последних "мгновений жизни" вычислительной системы и понять причину сбоя.

Основные результаты суперкомпьютерной программы "СКИФ" Союзного государства

В 2000-2003 гг. получены следующие результаты [1-02, 1-03, 2-03, 3-03]

Начаты работы по инженерным расчетам на системах семейства "СКИФ" и по созданию единого информационного пространства программы "СКИФ". В рамках приемочных (государственных) испытаний сверх программы и методики испытаний были показаны первые результаты в этом направлении:

В Программе "СКИФ" было предусмотрено и мероприятие, связанное с подготовкой и переподготовкой кадров для работы с высокопроизводительными установками семейства "СКИФ". В рамках данного мероприятия летом 2002 и 2003 годов в Переславле-Залесском проведена студенческая школа-семинар по Программе "СКИФ", с участием студентов и аспирантов из России, Белоруссии, Украины. На различных секциях школы студенты занимались инженерными расчетами и программированием на Т-системе. В последние дни работы школ проводились конференции, где каждый участник докладывал о результатах, полученных в рамках школы. Подготовлены цифровые видеозаписи всех занятий школы-семинара, пригодные для использования при чтении лекций по Т-системе или инженерным расчетам.

2007-2010 гг. период исполнения суперкомпьтерной программы "СКИФ-ГРИД" Союзного государства

Программа Союзного государства "Разработка и использование программно-аппаратных средств Грид-технологий перспективных высокопроизводительных (суперкомпьютерных) вычислительных систем семейства "СКИФ", шифр программы — "СКИФ-ГРИД"  исполнялась в течение 2007-2010 гг. В реализации программных мероприятий  участвовали более 40 предприятий от Республики Беларусь и Российской Федерации. Головными исполнителями программы были:

Главной целью Программы являлось освоение и адаптация передовых наукоемких технологий на перспективных суперкомпьютерных платформах, оптимизация суперкомпьютерных конфигураций семейства "СКИФ", ориентированных на построение на их основе Грид-компьютерных сетей, что позволит осуществить создание новой технологической базы для обеспечения динамики роста экономического и высокотехнологического потенциала России и Беларуси.

Суперкомпьютер
«СКИФ-Аврора ЮУрГУ»

К настоящему времени в рамках программ "СКИФ" и "СКИФ-ГРИД" создано четыре поколения (Ряды 1, 2, 3 и 4) семейства отечественных суперкомпьютеров "СКИФ". В частности, в последние годы  созданы суперкомпьютерные кластерные системы СКИФ МГУ ("Чебышев") в 2008 г. и "СКИФ-Аврора ЮУрГУ" в 2010 г. 

Разработанная в 2009 – 2010 гг. аппаратная платформа "СКИФ" ряда 4 обладает высокой энергоэффективностью, масштабируемостью, плотностью упаковки вычислительной мощности и по некоторым параметрам и применяемым решениям превосходит имеющиеся аналоги. Отличительной особенностью установок ряда 4 является использование водяного охлаждения шкафов, отсутствие подвижных частей и полная бесшумность работы, а также использование сенсорных жидкокристаллических экранов, являющихся панелью управления суперкомпьютером при помощи прикосновения пальцев. Суперкомпьютер ряда 4 семейства  "СКИФ" на жидкостном охлаждении «СКИФ-Аврора ЮУрГУ» в 2010 г.  установлен в Южно-Уральском государственном университете (ЮУрГУ) в Челябинске.

На основе принятых технических решений разработана линейка последовательности моделей суперкомпьютеров ряда 4 семейства "СКИФ", охватывающая  широкий спектр изделий от персональных и мобильных супер ЭВМ производительностью от нескольких Тфлопс до систем для национальных суперкомпьютерных центров производительностью до 10 Пфлопс.

Разработано несколько версий управляющей сети Servnet, реализующей нижний уровень мониторинга и управления в суперкомпьютерах семейства "СКИФ" (последняя версия Servnet-4 — для суперкомпьютеров ряда 4).

Суперкомпьютерные программы "СКИФ" и "СКИФ-ГРИД" внесли серьезный вклад в развитие суперкомпьютерной отрасли и суперкомпьютерного рынка России. По данным национального рейтинга TOP50 самых мощных суперкомпьютеров в СНГ, в последние годы 75-80% суперкомпьютеров отечественной разработки обеспечиваются суперЭВМ семейства "СКИФ" и установками с использованием технологических решений семейства "СКИФ". За время выполнения программ "СКИФ" и "СКИФ-ГРИД" шесть систем семейства вошли в престижный всемирный рейтинг суперЭВМ Top500 (с максимально высокой позицией №36 в июне 2008 г.).

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

В результате выполнения программы "СКИФ-ГРИД" создан опытный участок грид-сети Союзного государства, объединяющий суперкомпьютерные ресурсы России и Беларуси, который является базисом для построения интегрированного научно-образовательного пространства и основой для освоения и разработки новых технологий, повышения конкурентоспособности стран-участниц. Создана грид-среда СКИФ-Полигон с центром управления в ИПС им. А.К. Айламазяна РАН.

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

Результаты программ "СКИФ" и "СКИФ-ГРИД" неоднократно докладывались и демонстрировались на ведущих суперкомпьютерных конференциях и выставках, в том числе на самой известной международной суперкомпьютерой конференции и выставке ISC (International Supercomputing Conference) — в ноябре 2006 г. в г. Тампа (США); в июне 2009 г. в г. Гамбург (Германия) и в ноябре 2009 г. и в г. Портленд (США).

Последняя редакция 20.04.2011


© Исследовательский центр мультипроцессорных систем
Институт программных систем имени А.К. Айламазяна РАН