Российский суперкомпьютер — есть 1 Tflops!
В июле 2001 года в МСЦ в полном объеме введена в действие система с пиковой производительностью 1 Tflops (1012 операций с плавающей запятой в секунду). Этому событию было посвящено состоявшееся в МСЦ выездное заседание коллегии Минпромнауки России. МВС-1000М — самая мощная отечественная суперЭВМ. По пиковой производительности она соответствует суперкомпьютерам, занимающим 30–40 места в 18-й редакции (ноябрь 2001 года) известной таблицы ТОР500 (www.top500.org) — а это очень хороший показатель. Аппаратная часть суперЭВМ создавалась в НИИ “Квант”, системное программное обеспечение — в Институте прикладной математики имени М.В.Келдыша РАН (ИПМ). В работах участвовали также специалисты МГУ, МИФИ и ряда других организаций. Научный руководитель НИИ “Квант” — член-корр. РАН Владимир Константинович Левин — любезно согласился встретиться с нами и ответить на ряд вопросов.
Владимир Константинович, простите за наивный вопрос — а что сегодня понимают под термином суперкомпьютер?
Диапазон мощностей современных компьютеров велик — до 10 трлн. операций в секунду. Верхние два порядка этого диапазона занимают 500 компьютеров, перечисленных в списке ТОР500. Однако суммарная мощность этих 500 наиболее производительных компьютеров составляет менее 0,1% от суммарной вычислительной мощности всех компьютеров мира. Это — верхушка гигантской пирамиды, и принадлежащие этой верхушке машины называют суперкомпьютерами. Так что суперкомпьютер, как таковой, существовал всегда. Когда в мире было 10 тыс. машин, первую сотню можно было считать суперкомпьютерами. Остальное – нижняя часть диапазона. Сегодня значительная доля компьютеров охвачена сетью Интернет и, в принципе, их ресурсы можно объединять для решения какой-либо очень большой задачи. Это направление — метакомпьютинг — одно из перспективных в вычислительной технике. Известны прецеденты, когда сложные задачи решались при объединении мощности разнесенных компьютеров, в США развертывается сетевая система Teragrid, но это — еще эксперименты, а не производственная обработка. Пока объемные задачи решаются в концентрированных вычислительных установках.
Что представляют собой современные вычислительные установки — суперкомпьютеры?
С 1946 года (появление ENIAC) и до сего времени производительность наиболее мощных машин росла десятикратно за пятилетие, и этот темп не спадет, по крайней мере, в ближайшие 10–20 лет (при этом, как и на прошедших этапах, последуют изменения качественного характера). Через наши руки прошли системы с 1010 — кратным диапазоном вычислительной мощности — я предметно и конкретно мог бы рассказать про каждый десятичный порядок этого диапазона.
Как образуется десятикратный рост? Тактовая частота за пять лет растет в 2,5–3 раза. Второй сомножитель — число элементов процессора (транзисторов, логических вентилей, объем памяти) — увеличивается за пять лет в 4–5 раз, если говорить о логическом ядре. Память же, как регулярная структура, за тот же период растет (по объему) еще быстрее — в 6–8 раз. Отметим, что соотношение между производительностью и памятью зависит от рода задачи — в информационно-поисковых системах объем памяти должен быть большим, в специализированных автоматах требования к памяти могут быть гораздо ниже. Производительность процессора определяется тактовой частотой и количеством его элементов. Современный микропроцессор с тактовой частотой порядка 1 ГГц содержит десятки миллионов элементов (транзисторов). Если не хватает производительности одного микропроцессора, их ставят 10, 100, 1000, 10000 — кому сколько надо. В обычном компьютере — один процессор, в наиболее быстродействующем — порядка 10000, отсюда и получается диапазон в 10000. В системе МВС-1000М и ей подобных — порядка 1000 процессоров. В нижних строках списка ТОР500 — установки с числом процессоров от сотни и выше.
Микропроцессор — феномен современной цивилизации. Он впитал в себя все структурно-функциональные достижения, которые были в суперкомпьютерах предыдущих поколений. Микропроцессор имеет большой и серьезный внутренний параллелизм. Скажем, тактовая частота процессоров суперкомпьютера МВС-1000М — Alpha 21264 — 667 МГц. Производительность же его вдвое выше, т.е. 1,3 Gflops. Если считать операции однотактными, удвоение уже есть. А ведь операции, в основном, многотактные. Следовательно, в одном такте обрабатывается много команд. То есть микропроцессор — уже параллельная структура, и при решении конкретных задач еще надо суметь получить ту скорость, на которую он физически способен. Современный микропроцессор — это фактически суперкомпьютер 80-х годов, который тогда определяли, в том числе, и как машину, на которой очень трудно работать.
Скажите, суперкомпьютер МВС-1000М с точки зрения мировой вычислительной техники — это достижение? Насколько он современен по сравнению с зарубежными машинами?
Если посмотреть машины из верхних строк ТОР500 — они сделаны не на самых новых микропроцессорах. Это и понятно: собрать воедино несколько тысяч микропроцессорных модулей — большая работа и время. Если говорить об уровне техники — у нас применены более новые процессоры, чем в ряде машин из первых 20 строк списка ТОР500. Так что в МВС-1000М используются вполне современные компоненты. К слову, операции с плавающей запятой (скорость в Tflops) нужны далеко не во всех задачах. Если это работа с текстовой информацией, информационно-поисковые системы и т.д. — необходима побайтная, даже побитная обработка (растровые изображения). Тогда на целочисленных операциях скорость будет выше в 2–3 раза.
Самая большая машина (по числу процессоров и стоек) в ТОР500 – это система ASCI Red фирмы Intel (9632 микропроцессора) — одновременно и самая старая. В течение трех лет она занимала первое место в таблице. За это время ее мощность возросла с 1 до 3 Tflops за счет смены процессоров — вначале были Pentium Pro, а сейчас там стоят Pentium II — даже не Pentium III. Поэтому данная система с тактовой частотой процессора 333 МГц занимает сейчас четвертое место.
Число стоек в больших машинах – на порядок больше, чем у нас (в МВС-1000М их 18). Соответственно выше и потребляемая мощность. Поставить столь большой объем оборудования — совсем непросто, и для этого требуется значительное время. Поэтому столь масштабные системы имеет смысл делать, если это очень нужно.
Так что уровень у нас довольно современный.
Почему же ваша система не входит в Тор500?
Это — определенные хлопоты и затраты. А прямого интереса у нас нет — мы на внешний рынок не работаем. Конечно, для себя мы необходимые оценки проводим.
Не проигрывает ли МВС-1000М машинам, собранным производителями микропроцессорных модулей — компаниями Compaq или IBM, Intel?
Действительно, МВС 1000М сделана из готовых изделий — условно говоря, товаров, купленных в магазине. Но из-за того, что модули куплены в магазине, их свойства не ухудшаются. Скажем, Intel в рамках программы ASCI сделала систему Red на Pentium. Но Intel продает свои микропроцессоры Pentium, и многие фирмы делают на их основе процессорные модули, причем достаточно широко. Посмотрите в ТОР500 — там на 39–41-м местах современные системы IBM и NEC на процессорах Pentium III. А ведь IBM выпускает и свои собственные процессоры, например Power3, которые использованы в системе ASCI White — лидере ТОР500.
Новые заказы мы реализуем на более современных процессорах Alpha с тактовой частотой 800 МГц, уже поставили несколько десятков систем с Pentium III. Процессор новейшей нашей системы — Pentium III-1,2 ГГц — по производительности приближается к микропроцессору Alpha, используемому в МВС-1000М. Конечно, кроме операционной скорости важно еще как минимум два параметра — объем памяти, приходящейся на один процессор, и коммутационная среда. Эти проблемы удается решать. В системе МВС-1000М коммутационная cреда — сеть Myrinet компании Myricom (США). Обеспечиваемая ей интенсивность межпроцессорного обмена 2х250 Мбайт/с в дуплексном режиме — даже избыточна, поскольку мы еще не видели задач, где “держала” бы именно среда, запас пока значителен. То же касается и памяти — 2 Гбайта на двухпроцессорный модуль.
Не лучше ли было купить сразу готовую систему?
Прежде всего, на системные поставки действуют ограничения, они начинаются на уровне 10-процессорной системы. Не менее существенное ограничение — цена. Комплектные поставки значительно, чуть ли не на порядок, дороже. Третье обстоятельство — собственное изделие более ремонтопригодно и проще в освоении. А это весьма важно. Закупленные установки зачастую не работают с полной заявленной мощностью из-за трудностей освоения. Не менее значимый вопрос — операционная среда. Пользователи не должны мешать друг другу и знать друг о друге — это необходимое требование к многопользовательским системам. Совершенной должна быть и система доступа. Конечно, в своей системе мы защитим информацию лучше, чем в чужой.
Были ли у системы МВС-1000 предшественники?
МВС1000 — это уже третье поколение отечественных многопроцессорных установок, если не считать отдельные этапы в рамках каждого поколения. Основные узлы системы МВС-1000М отработаны в предыдущих разработках.
Мы начинали с транспьютерных элементов, техники уровня Intel 386 — первого 32-битного микропроцессора. Производительность отдельного узла была на уровне миллиона операций в секунду. Объединение одного–двух десятков транспьютеров давало эффект, эквивалентный нескольким машинам БЭСМ-6. Для математиков это было потрясением. Академик Андрей Андреевич Самарский (директор Института математического моделирования АН) приехал с большой свитой смотреть на это чудо после того, как его аспирант решил у нас задачу, которая, по оценкам, требовала шести машин БЭСМ-6. Следующее поколение — это микропроцессоры Intel 860, PowerPC 601–603 производительностью порядка 0,1 Gflops. У современных же процессоров (системы третьего поколения) данный параметр на уровне 1 Gflops и выше. В России в институтах Академии наук, в вычислительных центрах установлено несколько десятков систем второго поколения.
То есть опыт использования суперкомпьютеров у российских специалистов есть?
Конечно, интерес к этой технике возник не сегодня — он развивался. Пользователей к системе МВС-1000М пришло даже больше, чем ожидалось. Это очень хорошо, что в нашей стране существует такой пользовательский интерес. Ведь центральный вопрос создания суперкомпьютера — это применение.
Сейчас наша машина загружена круглосуточно, даже перегружена. Поэтому основная проблема руководства МСЦ — расстановка приоритетов в очереди. МВС-1000М — многопользовательская система, одновременно могут решаться несколько десятков задач. На переднем плане обработки выполняются небольшие задачи. Объемная же задача обрабатывается в фоновом режиме. Скажем, четверть мощности занимают малые задачи, но с высоким приоритетом, остальные три четверти — объемные задачи в фоновом режиме. Разумеется, на каждом из этих двух уровней также есть своя иерархия.
Наверное, не легко заставить эффективно работать одновременно столько процессоров, если даже от одного добиться номинальной производительности не просто?
Действительно, основной вопрос применения современного суперкомпьютера — эффективная загрузка всего массива процессоров. Сколько было разговоров, что нельзя так много лошадей запрячь в одну упряжку. И никакой теоремы о возможности или невозможности эффективного распараллеливания еще не доказано. Да, отдельные вычислительные фрагменты проработаны, науки тут много. Например, доказано, что сортировка массива распараллеливается пропорционально логарифму от его объема — обработку 1000 чисел можно распараллелить в 10 раз. Но реальные задачи состоят не из одной лишь сортировки, а в чисто сортировочных задачах (например, поиск) и скорости особой не требуется, там критично время обращения к памяти.
Так что для решения задач надо уметь распараллеливать. Причем применительно даже к одному процессору. Но проблемы все эти родились не сегодня — они в том или ином виде были всегда. Даже в ЭВМ 1–2 поколений приходилось параллельно осуществлять обработку в центральном процессоре и в блоках ввода/вывода данных, работу арифметического устройства и работу с памятью, обработку чисел и обработку команд. Такого рода параллелизм был свойственен даже ламповым машинам (первое поколение). Вот почему мы ведем работы по созданию суперкомпьютеров совместно с Институтом прикладной математики им. М.В.Келдыша, и я восхищаюсь самоотверженностью специалистов этого института — математиков, программистов.
Постоянный интерес пользователей лучше любых доказательств свидетельствует, что система МВС-1000М эффективна. Главное — не терафлопсы, а отдача пользователям. Пользователи ведь о цифрах производительности не скажут ничего — либо задача у них идет, решается в разумный срок, либо нет.
Кто является пользователем вашей системы?
Пользователи системы МВС-1000М и её предшественниц – это, в основном, академические институты. Например, Институт химической физики, институты Дальневосточного отделения РАН — обработка спутниковой информации для мониторинга природных явлений (тайфуны, пожары), обнаружения косяков рыбы и т.д. Институт математических проблем биологии — у них задачи комбинаторного плана (например, при синтезе сложных молекул, лекарств), которые очень хорошо распараллеливаются. Много задач от Уральского института математики и механики, в Москве – от ИПМ.
А кто определяет приоритеты задач?
В Академии наук есть научный совет по применениям, на котором постоянно докладывают о работах, которые либо были решены в МСЦ, либо должны решаться — т.е. они пробиваются в число приоритетных. Практически, совет — это постоянно действующий орган для определения приоритетных задач.
Системное программное обеспечение в МВС-1000М разрабатывалось в ИПМ РАН. Оно совместимо с международными стандартами?
Естественно. Мы привержены всем de facto- и de jure-стандартам — по технике, по стыковочным интерфейсам, по методам написания параллельных программ. Поэтому человек, составивший программу в любой точке мира, у нас будет чувствовать себя как дома.
Система МВС-1000М используется, как правило, в режиме удаленного доступа пользователей к вычислительным ресурсам (по сети Интернет), что является существенно новым фактором в отечественной практике применения высокопроизводительной вычислительной техники.
Ведь наша главная задача — удовлетворение пользовательского интереса. Мы обеспечиваем решение актуальных задач, которые нуждаются в мощных вычислительных системах, а не делаем вычислительную технику как таковую. Совместимость и переносимость программ — непременное условие, выполняемое на наших системах. Тем более что мы не единственные в стране, кто занимается суперкомпьютерами — мы сумели выйти на столь высокие вычислительные мощности, потому что у нас шире круг заказчиков, больше опыта и т.д.
Совсем недавно произошел приятный прецедент — приехали японские специалисты и сумели решить свои физико-химические задачи, программы для которых были написаны в Японии. Так что переносимость есть, “чужие” задачи идут практически сразу.
Вы тиражируете свои системы?
Вопрос о тиражировании здесь своеобразно выглядит. С одной стороны, это — массовая продукция, если говорить о множестве процессоров. С другой — таких систем нужно немного, это — штучные поставки под конкретных пользователей. Разговор о “типизации” комплектов может быть лишь весьма условным, тем более что по прошествии полугода исходные компоненты техники совершенствуются. Но преемственность, конечно, есть.
Суперкомпьютеры не делаются в большом количестве. И тому, видимо, есть причины. С одной стороны, проблема суперЭВМ относится к числу стратегических факторов современной цивилизации. В списке приоритетных технологий, утвержденном в свое время Правительством России, создание суперкомпьютеров стояло на одном из первых мест. Но с другой стороны, эта проблема — достаточно локальная, потому что подобная техника нужна исключительно для решения очень объемных, громоздких, сложных задач — в отличие от массовой компьютеризации.
Со стороны пользователей пока потребности, скажем, в удесятирении мощности не видно. Но систему с производительностью в пять раз выше, чем у МВС-1000М, в стране в ближайшие один–два года надо бы иметь и сделать это можно, основываясь на имеющемся заделе.
Спасибо за содержательную беседу.
С В.К.Левиным беседовали Б.И.Казуров и И.В.Шахнович
Наша справка
Система МВС-1000М – суперкомпьютер с массовым параллелизмом. Строится на базе двухпроцессорных модулей, включающих процессоры Alpha 21264 с тактовой частотой 667 МГц и пиковой производительностью 1,3 Gflops. Общая память двухпроцессорного модуля – 2 Гбайта. В базовом трехстоечном блоке – 64 двухпроцессорных модуля, всего в системе 6 базовых блоков (768 процессоров). Для межпроцессорной связи и коммутации используется локальная сеть Myrinet с пропускной способностью канала – 2x250 Мбайт/с в дуплексном режиме.
ОПУБЛИКОВАНА 18-Я РЕДАКЦИЯ ТОР500
С первой публикации списка Тор500 в июне 1993 года, приуроченной к очередной конференции по суперкомпьютерным вычислениям SC в Маннхейме, прошло восемь с половиной лет – а кажется, целая эпоха. В самом деле, лидер первого списка Тор500 – суперкомпьютер СМ-5 компании Thinking Machines (1024 процессора) с максимальной/теоретической производительностью 59,7/131 Gflops не попал бы в современную редакцию списка. Половина суперкомпьютеров Тор500 1993 года по производительности (1–1,3 Gflops не превосходят современные персональные компьютеры. А в этой половине – знаменитые Y-MP4 (Cray Research), nCUBE2, SX-2 (NEC)... Даже за последние полгода ситуация в околокомпьютерном мире изменилась кардинально – суперкомпьютер IBM SP PC604e (332 МГц) с 294 места сместился в самый конец, на 499-е. Гонки продолжаются.