Прощальным костром догорает эпоха...
АрхивТехнологииСтоит ли заниматься такими дорогими, далекими от повседневности задачами, как суперкомпьютеры, когда в экономике с избытком более насущных проблем? Что такое, вообще, суперкомпьютеры, и зачем они нужны?
"До суперкомпьютеров ли нам сегодня, в голодной отсталой стране, истерзанной многолетним экономическим экспериментированием? В стране, где ростом объема производства может похвастаться лишь Гознак. Да и можно ли всерьез говорить о суперкомпьютерах, отстав от мирового уровня развития электроники на шесть-десять лет (по другим оценкам, навсегда)?" - так начиналась одна из немногих открытых статей о суперкомпьютерах, опубликованная в начале 90-ых гг. (“Советский суперкомпьютер - возможен ли он сегодня?” - А. Масалович, Dr. Dobb’s Journal, 1991, N 3).
Об авторе
Масалович Андрей Игоревич - президент консорциума "Инфорус", к.ф.-м.н., автор более 100 печатных работ, лауреат стипендии РАН "Выдающийся ученый России" за личный вклад в разработку многопроцессорного суперкомпьютера МВС-100 (1993).
И действительно, стоит ли заниматься такими дорогими, далекими от повседневности задачами, как суперкомпьютеры, когда в экономике с избытком более насущных проблем? Что такое, вообще, суперкомпьютеры, и зачем они нужны?
Компьютер - всего лишь нарост на хвосте компьютерной мыши
Вы удивитесь, но формального общеупотребительного определения понятия "суперкомпьютер" не существует. В восьмидесятые, до появления "Эльбруса-2" бытовала шутка: "Суперкомпьютером называется любой компьютер, созданный Сеймуром Крэем". В конце восьмидесятых немногочисленные владельцы электронной почты с удовольствием пересылали друг другу "Классификацию Гордона Белла и Дона Нельсона", согласно которой суперкомпьютером следует считать любой компьютер весом более тонны. Более серьезно настроенные специалисты апеллировали к списку Grand Challenge (перечень наиболее ресурсоемких вычислительных задач человечества, предложенный Кеннетом Уилсоном) и предлагали называть суперкомпьютером вычислительное устройство, способное решать эти задачи. Сегодня большинство использует интуитивное определение: "Суперкомпьютер - это компьютер гораздо более мощный, чем доступные большинству пользователей машины".
Зачем нужны суперкомпьютеры? Лежащий на поверхности ответ - конечно, для решения сложных вычислительных задач - увы, неверен.
Во-первых, наибольшей вычислительной мощностью сейчас обладает доступный каждому интернет. Используя сотню тысяч захваченных специальной троянской программой компьютеров, хакер может, к примеру, взломать криптоалгоритм, стойкость которого достаточна, чтобы противостоять любому из существующих суперкомпьютеров. Существует даже модная отрасль распределенных вычислений - метакомпьютинг, который почему-то находится вне поля зрения российского руководства. А жаль, ведь метакомпьютинг - это одна из немногих сфер, где Россия могла бы реально достичь мирового господства за два-три ближайших года.
Во-вторых, для решения сложных задач сейчас принято использовать суперкомпьютерные сети (в России наиболее известен проект NaukaGrid), и все что нужно конечному пользователю - это удобное клиентское место с возможностью подключения к сети. Кстати, иногда не нужно и этого. Автору доводилось наблюдать, как в суперкомпьютерном центре под Вашингтоном персонал с изумлением взирал на огромный монитор, показывающий необычно интенсивное потребление вычислительных ресурсов международной научной сети неким незарегистрированным пользователем с Урала (при этом местоположение точки на экране подозрительно напоминало Челябинск-70, ныне Снежинск).
В третьих, результаты проведенной еще в начале 90-ых гг. специализированной НИР показали - большая часть запросов на бюджетное финансирование с целью оснащения суперкомпьютерами на самом деле имеет целью просто получение бюджетного финансирования. Подавляющее большинство заявленных задач обычно могут решаться без использования суперкомпьютеров.
Наконец, даже в тех случаях, когда суперкомпьютер действительно нужен для решения конкретной задачи, необходимо помнить, что суммарная вычислительная мощность этой весьма дорогостоящей груды железа уступает возможностям мозга обычной ящерицы (этот результат был получен недавно в ходе проекта eLisa, где для создания самоуправляемой компьютерной системы использовался суперкомпьютер IBM Deep Blue). Это особенно важно иметь в виду военным, которые сегодня без ума от своей доктрины "умных" боевых действий RMA (RMA, Revolution in Military Affairs, "переворот в военном деле"). С точки зрения достижения превосходства в реальном бою дюжина тренированных десантников сегодня дают больше, чем десяток самых быстрых суперкомпьютеров. (Кстати, при такой постановке вопроса надо признать, что обычный компьютер - это всего лишь нарост на хвосте компьютерной мыши).
Итак, решение сложных задач - не главное предназначение суперкомпьютеров. Более важными представляются два других аспекта:
- Разработка суперкомпьютеров - это уникальный инструмент повышения научного потенциала страны, полигон новых идей, незаменимая кузница научных кадров самой высокой квалификации.
- Оснащенность суперкомпьютерами - неотъемлемый компонент военно-политического потенциала страны, критически важная составная часть облика сверхдержавы и своеобразный "пропуск" в мир развитых стран.
С первым тезисом все более или менее понятно. Наличие в России научной школы высокопроизводительных вычислений мирового уровня признавалось в каждое десятилетие начиная с 50-ых годов и признается сегодня (и это при том, что в мировой летописи многопроцессорных вычислений России посвящена всего одна строчка: в начале 90-ых Россия купила у Индии транспьютерную систему CDAC).
Чтобы разобраться со вторым тезисом, надо уяснить, что суперкомпьютеры сегодня - это вид оружия, не менее важный, чем сверхзвуковые истребители и подводные лодки. А главное назначение оружия - не стрелять (сколько минут в сутки стреляет автомат Калашникова?), а "оттопыривать карман", то есть демонстрировать наличие у страны стратегического оборонного потенциала. Возьмем, к примеру, водородную бомбу. Тот, кому придет в голову действительно использовать ее как оружие - авантюрист, придурок и военный преступник. Однако необходимость присутствия в арсенале державы определенного количества водородных бомб очевидна и не нуждается в обоснованиях.
В девяностых были изготовлены первые опытные образцы 32-разрядного микропроцессора "Эль-90", разработанного в ИТМ и ВТ под руководством Владимира Пентковского (важно помнить, что реально логический дизайн процессора был закончен еще в 1987 году). В "Эль-90" объединялись концепция RISC и архитектура "Эльбрус-2".
Вот основные характеристики процессора "Эль-90":
- 32-разрядная архитектура;
- суперскаляр с выдачей до трех команд за такт;
- простые RISC-подобные команды, которые процессор способен эффективно обрабатывать (декодируются "на лету" из байт-кода языка "Эль-76");
- раздельные кэши команд и данных;
- предсказание ветвлений;
- конвейеризованный блок операций с вещественными числами;
- поддержка многоуровневой иерархии памяти, кэш первого и второго уровня;
- поддержка многопроцессорности (до 10 процессоров);
- поддержка отладки, мониторинг производительности;
- поддержка многопроцессорного режима "сверхнадежных вычислений".
К сожалению, начавшееся в середине 80-ых гг. сокращение финансирования НИОКР в России достигло к этому моменту критической отметки. Для справки: в 1986-1990 годах на НИОКР в России было потрачено $10,6 млрд. против $20,3 млрд. в США. В 1991-1995 гг. финансирование НИОКР в США увеличилось на 10% и составило $22,3 млрд, а в России сократилось в сорок раз и составило всего $0,25 млрд.
Если ваш взгляд не зацепился за предыдущую фразу, повторяем: В РОССИИ В НАЧАЛЕ 90-ЫХ ГОДОВ ФИНАНСИРОВАНИЕ НИОКР, В ТОМ ЧИСЛЕ КРИТИЧЕСКИ ВАЖНЫХ, СОКРАТИЛОСЬ В СОРОК РАЗ. Источник - материалы совещания в Государственной Думе ФС РФ "О состоянии и перспективах развития полупроводниковой электроники в России" 20 мая 2004 г.
Подавляющее большинство перспективных разработок были заморожены или прекращены ввиду недостатка финансирования, начались эрозия и распад научных коллективов, создававшихся десятилетиями. В частности, было прекращено финансирование разработки процессора "Эль-91С", развивавшего идеи "Эль-90". Владимир Пентковский исчезает с российского научного горизонта и появляется вновь в команде Intel Microprocessor Product Group (Фолсом, штат Калифорния) в качестве ключевого разработчика архитектуры процессора Pentium-III.
Напомним, что представлял собой процессор Pentium-III, анонсированный в 1993 году:
- 32-разрядная архитектура;
- суперскаляр с выдачей до двух команд за такт;
- простые RISC-подобные команды, которые процессор способен эффективно обрабатывать (декодируются "на лету" из команд х86);
- раздельные кэши команд и данных;
- предсказание ветвлений;
- конвейеризованный блок операций с вещественными числами;
- поддержка многоуровневой иерархии памяти, кэш первого и второго уровня;
- поддержка многопроцессорности (2 процессора);
- поддержка отладки, мониторинг производительности;
- поддержка двухпроцессорного режима "сверхнадежных вычислений".
Чтобы не вступать в полемику на тему "все автомобили похожи, потому что у них четыре колеса", предоставляем читателю возможность самостоятельно сравнить характеристики "Эль-90" и Pentium и просто процитируем строки из Hi-Tech Digest :
"Well, Pentium and El-90 seem to have so much in common, don't you think so? It seems that Pentium has been named after its developer - Vladimir Pentkovski." ("Что ж, у Pentium и "Эль-90", похоже, так много общего, вам не кажется? По-видимому, Pentium и назвали в честь его разработчика, Владимира Пентковского". Hi-Tech Digest, июль 1999 г, http://www.hi-tech.ournet.md/elbrus_e2k.html).
Одно существенное различие между "Эль-90" и Pentium все же бросается в глаза: первый был разработан в 1987 году, второй - шесть лет спустя.