ИНФОРМАТИЗАЦИЯ СТРУКТУР КРИТИЧЕСКИХ ТЕХНОЛОГИЙ
Ю.В. Ступин
(г. Москва, Научно-Технический институт межотраслевой информации, Россия)
В информатизации вычислительных процессов на современном этапе особое место занимают проблемы, связанные с фильтрацией и управлением знаниями [1]. Для информационных инфраструктур критических технологий (ИИКТ) актуальность этой проблемы связана с необходимостью разработки новых принципов организации функционирования информационных систем и процессов, применения информационных технологий и систем в принятии решений на различных уровнях управления. ИИКТ можно определить как расширенную информационную среду, взаимодействующую с распределенной совокупностью информации и данных (РСИД) домена критических технологий (КТ) глобального информационного пространства и организациями – потребителями информации. Для КТ естественнонаучных исследований (ЕНИ) РСИД включает кроме стандартных информационных объектов (Интернет, Интранет, информационные центры, библиотеки и др.) также дополнительные источники информации, такие как уникальные экспериментальные установки, автономные системы исследовательских лабораторий и фирм, центры разработки и внедрения новой продукции и т.д., в которой взаимодействует сеть агентов (участников) из сфер науки, информатики, бизнеса и политики с целью обмена информацией и знаниями, применения новых технологий и оборудования для быстрой и качественной реализации инновационных проектов КТ.
Для эффективного функционирования такой среды необходимо иметь разветвленную структуру взаимодействующих друг с другом суперкомпьютерных центров с организацией к ним доступа через локальные и другие сети персональных ЭВМ и автоматизированные системы.
Практическое решения этой проблемы концентрируется на финансировании, элементной базе, технологии производства, архитектуре, синхронизации (согласовании) процессов, аппаратно-программном обеспечении (сетевом, контрольно-измерительном, комплектующем и другом оборудовании и устройствах; системном и прикладном программном обеспечении). Работа по информационно-аналитическому и аппаратно-программному обеспечению разработок мультипроцессорных вычислительных систем (МВС) выполнялась нами совместно с разработчиками МВС – Институтом прикладной математики им. М.В. Келдыша РАН и НИИ «Квант» в рамках инновационных проектов: ИФ-15/137-94, ИФ-15/01-95, ИФ-15/34-97, ИФ-15/01-2000.
В результате в рамках проектов ИФ-15/137-94 и ИФ-15/01-95 [2-5] было создано семейство МВС-100 в виде типовых конструктивных модулей по 32, 64, 128 процессоров, с возможностью масштабирования (система МВС-100/64 на основе 64 вычислительных модулей (ВМ) производительностью 10 Гфлопс могла наращиваться до 128 модулей производительностью до 100 млрд. операций в секунду), с полной аппаратной и программной совместимостью всех образцов семейства на основе микропроцессоров Intel-860, оперативной памятью объемом от 8 до 32 Мбайт, транспьютеров на четыре внешних канала для межпроцессорного обмена с пропускной способностью каждого канала обмена – 2 Мбайт/с. На втором этапе этой разработки был создан вычислительный модуль ВМ-200 на основе микропроцессора Intel i860ХР, коммуникационного элемента – транспьютера типа Т805, оперативной памяти емкостью до 20 Мбайт, изготовлено и введено в опытную эксплуатацию две вычислительные системы МВС-100/64 с дисковыми подсистемами емкостью свыше 10 Гбайт, суммарной пиковой производительностью 11,8 Гфлопс. На этом же этапе были завершены разработки параллельных языков программирования и созданы трансляторы с алгоритмических языков Фортран GNS и DVM, Си GNS и DVM.
В рамках проекта ИФ-15/34-97
[6] осуществлено развитие аппаратных и программных средств семейства МВС и
параллельных вычислительных технологий, суммарная реальная производительность
доведена до сотен Гфлопс. Создано 7
суперкомпьютерных центров: в ИПМ им.
М.В. Келдыша, НИИ “Квант”, РФЯЦ ВНИИТФ (г. Челябинск-70), ИММ УрО РАН (г.
Екатеринбург), ИАУ ДВО РАН (г. Владивосток), ВЦ СО РАН (г. Новосибирск), ИВМ
РАН. Основой этих центров стали системы МВС-100 различных конфигураций.
В рамках проекта ИФ-15/01-2000
[7] разработана и создана суперЭВМ терафлопной производительности, закончено
проектирование и изготовление опытной партии вычислительных модулей третьего
поколения на микропроцессорах Alpha 21164 (две установки МВС-1000 по 32
вычислительных модуля в каждой), создание мультипроцессорной системы с пиковой производительностью 1,0 Тфлопс. Для
Межведомственного суперкомпьютерного центра
создана система МВС 1000М пиковой производительностью 1012
операций с плавающей точкой с двойной точностью в секунду. Система включает 768
процессоров Alpha 21264 (6 базовых блоков, состоящих из 64
двухпроцессорных модулей), управляющую ЭВМ, файл сервер NetApp F840,
сеть Myrinet 2000, сети Fast/Gigabit
Ethernet,
сетевой монитор, систему бесперебойного электропитания [8]. Решающее поле МВС
1000М состоит из 384 двухпроцессорных ВМ, каждый из которых включает: два
процессора Alpha 21264 667 МГц с кэш-памятью второго уровня объемом
4 Мбайт, двух Гбайтную разделяемую оперативную память, жесткий диск емкостью 20
Гбайт, сетевые интерфейсные платы, плату видеоконтроллера, источник питания
мощностью 600 Вт. Пиковая производительность одного ВМ составляет 2,7 млрд.
операций с плавающей точкой с двойной точностью в секунду.
Дальнейшее направление
исследований и разработок в этой области связывают с переходом на новую
элементную базу (кристаллы Blue Gene, Cell и др.), что позволит создать
суперЭВМ в составе 1 млн. процессоров с суммарной производительностью 1015
оп/с. Применение технологии “система-на-кристалле”, состоящей из совокупности
сравнительно простых процессоров и коммуникаций между ними, многократно снижает
сложность проектирования, изготовления и тестирования кристаллов. Кроме того,
отсутствие в процессорах сложных систем управления открывает большие
возможности по их проблемной ориентации для повышения производительности и
надежности вычислительных систем.
Одна из системных проблем
мультипроцессорных ЭВМ состоит в том, что не всякий алгоритм можно полностью
векторизовать или разбить на подзадачи, в связи с чем реальная производительность
ЭВМ существенно ниже пиковой и растет не пропорционально с увеличением числа
процессоров (на многих моделях было показано, что при 10 процессорах
быстродействие возрастает не в 10, а только в 8 - 9 раз, при 50 процессорах
эффективность снижается до 55%). Анализ
этой проблемы [9,10] и разработок в области параллельного программирования
показал, что одним из направлений повышения реальной производительности сетевых
структур может быть Т-система [11, 12]. Результатом
информационно-аналитического обеспечения этого направления в рамках
инновационного проекта ИФ-15/10-2000 [13, 14] была разработка ИПС РАН
промышленной версии Т-системы, языка программирования Т2СР для написания
программ с использованием Т-системы, промышленной версии Т-компилятора Т2СС, решение с их использованием практических
задач.
На базе комплекса аппаратно-программных средств локальной сети рабочих станций ИПС РАН с пиковой производительностью 0,6 Гфлопс проведено автоматическое динамическое распараллеливание задач с мощностью мультипроцессорной системы не ниже 90%, что примерно на 30% превышает использование процессоров в мультипроцессорных системах. Система внедрена в настоящее время в ряде организаций, что позволяет на недорогих мультикомпьютерах с Т-системой решать сложные задачи, требующие длительного времени счета. Осуществлено среднезернистое распараллеливание (104-106 команд процессора), что соответствует таким объектам, как подпрограмма, функция; размер гранул параллелизма определяет пользователь. Т-система реализует автоматическое динамическое распараллеливание программ.
Аппаратно-программным окружением служит сильно связанная сеть процессорных модулей с использованием коммуникационной аппаратуры класса Fast Ethernet с протоколом IP, работающих под управлением операционной системы Linux (IP-сеть Linux-машин). В каждом процессорном элементе (Linux-машине) выполняется один или несколько экземпляров Т-системы (в терминах ОС Linux – процессы пользовательского уровня). Каждый из этих экземпляров Т-системы (соисполнителей) имеет возможность обмениваться сообщениями со всеми соисполнителями, работающими в рамках той же задачи пользователя, и ответственен за локальную организацию вычислений. Совокупность всех экземпляров Т-системы образует распределенную операционную среду параллельного выполнения задачи пользователя. Используется модель представления процесса вычислений в виде автотрансформации вычислительной сети (ВС). Для представления ВС в памяти строятся списковые структуры звеньев (Т-структуры: расположенные подряд одиночные звенья и мультизвенья). Для реализации операций, связанных с отношением поставщик-потребитель, в кольце дополнительно могут находиться вспомогательные системные звенья с тэгами (для реализации системного вызова и для удержания процесса, выход которого является поставщиком в данном кольце). Тэг определяет, какого рода данные содержатся в звене. Т-система использует различные системные очереди для удержания и обработки различных объектов (Т-структур). Это очереди: готовых к исполнению процессов, пренатальных (еще не выполнявшихся) процессов, фиктивных выходов, входных и выходных разъемов, вспомогательные системные. С каждым процессом в Т-системе связан свой поток управления, соответствующий выполнению Т-функции пользовательской программы (множественный поток управления). Главный поток управления осуществляет планирование обычных потоков управления. Основной компонентой Т-системы, поддерживающей реализацию используемой модели вычисления, является вычислительная компонента. Одну из важнейших ролей в Т-системе играют алгоритмы функционирования входных и выходных разъемов. Разъемная пара состоит из двух разъемов – входного и выходного, расположенных в памяти различных соисполнителей (соответственно, входного и выходного). При этом входной разъем является источником для нескольких потребителей, находящихся в звеньевой памяти входного соисполнителя. Разъем выходной является одним из потребителей какого-либо источника, находящегося в звеньевой памяти выходного соисполнителя. Каждый из входных-выходных разъемов содержит уникальный идентификатор, соответствующий данной разъемной паре. Входной разъем содержит идентификатор выходного, а выходной разъем – идентификатор входного соисполнителя. Базовый алгоритм работы разъемной пары реализует механизм передачи данных по требованию. Фрагменты между различными соисполнителями передаются в транспортной форме (список буферов, каждый из которых передается как отдельный Т-пакет). Транспортная форма содержит полную идентификацию всех тех входных разъемов, которые являются получателями находящихся в транспортной форме данных. Примерно аналогично формируется транспортная форма процесса. Компилятор языка Т2СР преобразует входной текст, написанный на языке программирования Т2СР, в текст на языке программирования Си. Компиляция и сборка Си модулей в исполняемую под управлением Т-системы Т-программу производится компилятором Т2СС с использованием стандартного Си-компилятора (GCC).
Результаты
НИОКР использованы в программе Союзного государства России и Беларуси по теме
«Разработка и освоение в серийном производстве семейства высокопроизводительных
вычислительных систем с параллельной архитектурой (суперкомпьютеров) и создание
прикладных программно-аппаратных комплексов на их основе» (шифр «СКИФ»). Программный комплекс (ПК) Т-система
в составе семейства суперкомпьютеров (СК)
«Скиф» прошел приемочные (государственные) испытания. В настоящее время
ПК Т-система в составе программного
обеспечения СК «СКИФ» находится в опытной эксплуатации и используется десятками
организаций. В период 2000-2002 гг. выпущено 4 образца кластерных СК «СКИФ» с пиковой производительностью до 100
млрд. операций в секунду с Т-системой.
Коммерческое внедрение Т-системы планируется в период реализации программы «СКИФ-2» (2005-2009 гг.).
ЛИТЕРАТУРА
1. Рябиков С.В., Ступин Ю.В., Махова Е.Е. Инновационные процессы и инновационный менеджмент в науке, высшем образовании и экономической политике. Изд. НТИМИ, стр.56, рис.11, 2004 г.
2. Ступин Ю.В., Сироткина Л.Б. Освоение основных конструктивных модулей и создание образца многопроцессорной вычислительной системы большой производительности. Отчет НТИМИ, ИФ-15/137-94.
3. Ступин Ю.В., Сироткина Л.Б. Семейство суперЭВМ МВС-100 с параллельной архитектурой, системное и прикладное программное обеспечение. Отчет НТИМИ, ИФ-15/01-95.
4. Забродин А.В., В.К. Левин
Опыт разработки параллельных вычислительных технологий. Создание и развитие
семейства МВС. Отчет по проекту «Создание
семейства супер-ЭВМ с параллельной архитектурой», этап I, 1995.
5. Забродин А.В., Левин В.К.,
Сидоров А.Ф. Вычислительные системы МВС-100. Отчет по проекту «Создание семейства супер-ЭВМ с параллельной
архитектурой», этап II, 1995.
6. Ступин Ю.В., Сироткина Л.Б. Развитие аппаратных и программных средств семейства суперЭВМ МВС-100 и параллельных вычислительных технологий. Отчет НТИМИ, ИФ-15/01-97.
7. Ступин
Ю.В., Сироткина
Л.Б. СуперЭВМ МВС-1000 терафлопной производительности для решения задач
повышенной сложности. Отчет НТИМИ, ИФ-15/01-2000.
8. Левин В.К. Отечественные
суперкомпьютеры семейства МВС. Интернет. Parallel.ru.
9. Андрианов А.Н., Ефимкин
К.Н., Задыхайло И.Б. Язык Норма. Препринт ИПМ им. М.В. Келдыша АН СССР, № 165,
1985.
10. Ступин
Ю.В. Создание
сверхскоростных супер-ЭВМ тера и петафлопного диапазонов (аналитический обзор).
Изд. НТИМИ, стр. 23, рис. 14, табл.1, библ.7, 1999 г.
11.
Abramov S., Adamovitch A.
and Kovalenko M. T-system: programming environment providing automatic dynamic parallelizing on IP-network
of Unix-computers. Report on 4-th International Russian-Indian seminar and
exibition, Sept. 15-25, 1997.
12. Абрамов С.М. Отчет о НИР по
теме «Разработка опытного образца аппаратно-программного комплекса Т-системы
как средства повышения реальной вычислительной мощности мультипроцессорных
комплексов», Переславль-Залесский, 2001.
13. Ступин
Ю.В., Махова
Е.Е. Разработка Т-системы как средства повышения реальной
вычислительной мощности мультипроцессорных комплексов. Отчет НТИМИ, ИФ-15/10-2000.
14. Ступин
Ю.В., Сироткина
Л.Б. Отчет о реализации проекта «Разработка опытного образца
аппаратно-программного комплекса Т-системы как средства повышения реальной
вычислительной мощности мультипроцессорных комплексов». Изд. НТИМИ, г. Москва,
2001 г. ИФ-15/10-2000.