В каждый момент развития компьютерных технологий производители выпускают обычные компьютеры, производительности которых хватает для большинства «обычных задач». И таких компьютеров выпускается много — миллионы штук.
В то же время, есть пользователи, которым надо решать задачи высокой сложности, и для их решения выпускаются высокопроизводительные вычислительные установки. Таких установок производят значительно меньше — десятки тысяч штук.
Есть некоторое количество пользователей, которым надо решать суперсложные задачи, и для их решения выпускаются суперкомпьютеры — самые мощные на данный момент развития компьютеры.
Можно ли как-то точно определить, что есть суперкомпьютер, а что есть высокопроизводительная установка? Ученые и специалисты спорят о критериях до сих пор. Но в одном нет сомнения: если в каждый момент времени взять 500 самых мощных машин мира, то все специалисты согласятся, что их можно смело называть суперкомпьютерами. Так что, вполне можно придерживаться такого определения.
C 1993 года в мире ведется рейтинг пятисот самых мощных компьютеров — TOP-500
http://www.top500.org. Рейтинг обновляется 2 раза в год — в июне и ноябре. На сайте TOP-500 есть база данных всех выпусков рейтинга с 1993 года, есть очень удобные средства поиска
http://www.top500.org/sublist/ в этой базе данных. Легко, например, узнать, сколько суперкомпьютеров было в такой-то стране за весь период существования рейтинга или в тот или иной год. Легко узнать, сколько суперкомпьютеров попало в этот список (за все годы существования рейтинга, или в определенный год) от некоторого производителя: IBM, HP, и т.д. Можно узнать, сколько было отечественных разработок. Поскольку наши производители еще не такие именитые, как IBM, в графе «Производитель» их помечают словами «собственная разработка» — «self-made».
На территории СССР за все время ведения рейтинга находилось семь суперкомпьютеров — пять в России и два в Республике Беларусь. Эти суперкомпьютеры в разные годы 24 раза занимали различные места (18 раз – «российские и, 6 раз — «белорусские»). Четыре из семи этих суперкомпьютеров были Россией просто куплены у западных фирм: IBM, Hewlett-Packard, Sun Microsystems. Оставшиеся три суперкомпьютера имеют в рейтинге Top500 пометку «self-made» — «собственная разработка»:
-
"Суперкомпьютер МВС-1000М" вошел в список Top-500 в июне 2002 года и сразу занял 64 место. Над МВС-1000М работали НИИ «Квант», МСЦ, ИПМ им. М.В.Келдыша РАН. Я думаю, до сих пор это самое яркое достижение отечественной суперкомпьютерной отрасли: Россия из ниоткуда сразу ворвалась в первую сотню рейтинга! С июня 2002 по июнь 2004 года машина МВС-1000М без технических изменений держалась достойно в Top500: 4 редакции рейтинга — завидное «долголетие». При этом три выпуска рейтинга она держалась в первой сотне. Фантастика!
-
"Суперкомпьютер СКИФ К-500" создан по Суперкомпьютерной Программе «СКИФ» Союзного государства (Россия и Беларусь), занял 407 место в рейтинге Top500/ноябрь-2003.
-
"Суперкомпьютер СКИФ К-1000" создан по Суперкомпьютерной Программе «СКИФ» Союзного государства (Россия и Беларусь) — первая сотня (98 место) в рейтинге Top500/ноябрь-2004, первая половина списка (174 место) в рейтинге Top500/июнь-2005; 331 место в рейтинге Top500/ноябрь-2005.
Чем суперкомпьютеры отличаются по устройству от простых (персональных) компьютеров? Каковы их архитектурные особенности? Сегодня все суперкомпьютеры — это мультипроцессорные системы, т.е. это системы, в которых не один и не два процессора (как в большинстве персоналок), а очень много — сотни, тысячи, до десятка тысяч. Архитектура у суперкомпьютеров бывает разная: векторная, конвейерная и др. Но на сегодняшний день самая популярная архитектура суперкомпьютеров (72% в списке TOP-500) — кластеры.
Кластерная архитектура подразумевает создание суперкомпьютера по следующей схеме:
-Берутся так называемые вычислительные узлы — самые обычные компьютеры, как и у простых пользователей. Вот только процессоров в узле обычно несколько: от 2-х до 8-ми. Если не вдаваться в детали, то можно сказать, что используются комплектующие, широко доступные на рынке: обычные (SMP-мультипроцессорные) материнские платы, обычные процессоры (от Intel, от AMD или от IBM и т.п.), память, диски.
-Как правило, все эти комплектующие собираются в специальном корпусе, в компактном исполнении, в компактном форм-факторе. Обычно это выглядит так, как будто привычную персоналку
"раскатали в тонкий (порядка 3 см) блин".
-Затем берется большое количество таких узлов — сотни и даже тысячи. Узлы устанавливаются в специальные шкафы и соединяются между особой сверхбыстрой сетью, которая используется для организации параллельного счета. Иногда для этого используют широкодоступные сетевые технологии, например, Gigabit Ethernet. Однако когда речь идет о серьезном подходе к суперкомпьютеру, то используют особые сетевые решения, специальную сеть для оптимальной организации параллельного счета: InfiniBand, SCI, Myrinet и др.
Кроме этой «сети для счета», обычно узлы связывают еще одной сетью — для передачи данных и программ. Здесь уже используют, как правило, обычные сетевые технологии (сегодня это, как правило, Gigabit Ethernet).
Более того, часто в суперкомпьютере бывает и третья, одельная управляющая сеть, которая регулирует такие вопросы как включение-выключение электропитания, Reset отдельных узлов, вышедших из повиновения и т.д.
Конструктивно все это выглядит довольно внушительно. Даже если мы рассматриваем суперкомпьютеры с 100 до 500-го места списка TOP-500, то это от 2-х до 10-ти шкафов, в которые компактно упакованы вычислительные узлы. Первая сотня в списке TOP-500 — это десятки шкафов оборудования. А машины из первой десятки списка TOP-500 занимает огромное помещение, заставленное сотней шкафов. Иногда для таких машин даже строят специальное здание, как это было для известного японского суперкомпьютера Earth Simulato. Сегодня он занимает седьмое место в Top500, а ранее долгое время (с ноября 2001 по июнь 2004 года, шесть выпусков рейтинга Top500!) он был самым мощным суперкомпьютером в мире.

Рис.1 Японский суперкомпьютер Earth Simulator (3-ий этаж компьютера)
В этом здании на первом этаже располагается электростанция, поскольку Earth Simulator потребляет шесть мегаватт электроэнергии. Второй этаж занимают только коммуникации — кабельные сети. Третий этаж заставлен полностью шкафами с оборудованием. Размеры каждого этажа 65х50 метров, высота — 7 метров.
А, скажем, наш самый мощный суперкомпьютер отечественной разработки «СКИФ К-1000», который представляет собой 8 шкафов (которые занимают около 5 кв.м), 288 вычислительных узлов, 576 процессоров, для своего размещения требует помещения в 20 кв. метров. Кроме узлов в шкафах тянутся 2,5 километра кабеля с примерно 2000 разъемов, которые надо было, ничего не напутав, правильно подсоединить. Потребляет эта установка 89 киловатт.
Несколько слов о том, что такое производительность суперкомпьютера. Измеряется она в количестве вычислительных арифметических операций, выполняемых суперкомпьютером за одну секунду. Современные суперкомпьютеры способны выполнять миллиарды (GFlops) и триллионы операций в секунду (TFflops).
Здесь надо отметить, есть два вида производительности: пиковая (теоретическая, предельная) и реальная.
Пиковая производительность измеряется так:
-Берется количество процессоров в суперкомпьютере (например, их 1000).
-Берется тактовая частота каждого процессора, допустим, 2 ГГц — это значит, что 2 млрд. тактов в секунду делает каждый процессор.
-Дальше у производителя процессора узнается, сколько команд за такт может выполнить данный тип процессора в самом лучшем случае — допустим, 2 команды за такт.
-После этого умножаем 2 на 1000 процессоров и на 2 миллиарда тактов в секунду, и получаем, что этот суперкомпьютер выполнит (если повезет) до 4 триллионов операций в секунду. Это и есть предельная пиковая теоретическая производительность.
Для измерения реальной производительности берется задача, для которой известно, сколько команд выполняется в процессе ее решения. Эта задача решается на суперкомпьютере и замеряется время ее решения. Затем количество команд делится на время, и мы получаем
реальную производительность на данной задаче.
Список «TOP-500» ранжирует суперкомпьютеры по реальной производительности, измеренной на задаче «Linpack», решающей систему линейных уравнений (с тысячами неизвестных и тысячами уравнений).
Отношение реальной Linpack-производительности к пиковой производительности называется коэффициентом полезного действия суперкомпьютера. Он показывает, насколько удалось выбрать все возможные ресурсы всех процессоров для решения задачи. Как правило, в списке TOP-500 КПД равен 50–60%. Установок с КПД 80% и выше – единицы. По КПД можно судить об уровне научной разработки, это оценка интеллектуальной составляющей суперкомпьютера.
Говоря о разнице между суперкомпьютерами и обычными компьютерами, надо отметить использование специализированного программного обеспечения. Операцион¬ная система суперкомпьютеров — это, как правило, Linux, либо другие виды Unix-систем. При составлении суперкомпьютерных программ используются специальные библиотеки для организации параллельного счета, чаще всего – библиотека MPI.
Все эти характеристики (суперпроизводительность, особенности аппаратной архитектуры, программного обеспечения) и отличают обычный компьютер от суперкомпьютера. На эту же тему полезно посмотреть в Интернет раздел
«Суперкомпьютерная азбука».