Суперкомпьютеры
В 1996 году куратор Музея вычислительной техники в Великобритании Дорон Свейд написал статью с сенсационным заглавием: «Российская серия суперкомпьютеров БЭСМ, разрабатывавшаяся более чем 40 лет тому назад, может свидетельствовать о лжи Соединенных Штатов, объявлявших технологическое превосходство в течение лет холодной войны».
Действительно, середина 1960-х годов была звездным часом в истории советской вычислительной техники. В СССР тогда работало множество творческих коллективов – институты С.А. Лебедева, И.С. Брука, В.М. Глушкова и т д. Одновременно выпускалось множество различных типов машин, чаще всего несовместимых друг с другом, самого разнообразного назначения.
Созданная в 1965 году и выпущенная впервые в 1967 году БЭСМ-6 была оригинальным русским компьютером, спроектированным наравне со своим западным аналогом. Затем был знаменитый «Эльбрус», было развитие БЭСМ (Эльбрус-Б). В.М. Глушков создал замечательную Машину Инженерных Расчетов – «Мир-2» (прообраз персонального компьютера), не имеющую до сих пор западных аналогов.
Именно коллектив «Эльбруса» первым разработал суперскалярную архитектуру, построив основанную на ней машину «Эльбрус-1» на много лет раньше Запада. В этом коллективе на пару лет раньше, чем в фирме «Cray» – признанном лидере в производстве суперкомпьютеров, были реализованы идеи многопроцессорного компьютера.
Научный руководитель группы «Эльбрус», профессор, член-корреспондент РАН Борис Арташесович Бабаян считает, что наиболее существенное достижение группы – архитектура супермашины «Эльбрус-3». «Логическая скорость этой машины значительно выше, чем у всех существующих, то есть на том же оборудовании эта архитектура позволяет в несколько раз ускорить выполнение задачи. Аппаратную поддержку защищенного программирования мы реализовали впервые, на Западе ее еще даже и не пробовали. «Эльбрус-3» был построен в 1991 году. Он уже стоял у нас в институте готовый, мы начали его отладку. Западные фирмы столько говорили о возможности создания такой архитектуры… Технология была отвратительная, но архитектура была до того совершена, что эта машина была в два раза быстрее самой быстрой американской супермашины того времени Cray Y-MP».
Принципы защищенного программирования в настоящее время реализуются в концепции языка Java, а идеи, аналогичные идеям «Эльбруса», в настоящее время легли в основу разработанного фирмой «Intel» совместно с HP процессора нового поколения – Merced. «Если вы посмотрите Merced, это практически та же архитектура, что и в «Эльбрусе-3». Может быть, какие-то детали Merced отличаются, и не в лучшую сторону».
Итак, несмотря на всеобщую стагнацию, все еще можно было строить компьютеры и суперкомпьютеры. К сожалению, дальше с нашими компьютерами случилось то же самое, что служилось с российской промышленностью вообще. А ведь сегодня в число традиционных макроэкономических показателей (таких, как ВВП и золотовалютные запасы) настойчиво стремится попасть новый, экзотический на первый взгляд параметр – суммарная мощность компьютеров, которыми располагает страна. Наибольший удельный вес в этом показателе будут иметь суперкомпьютеры. Еще пятнадцать лет назад эти машины были уникальными монстрами, но теперь их производство поставлено на поток.
«Первоначально компьютер создавался для сложных вычислений, связанных с ядерными и ракетными исследованиями, – пишет в журнале «Компания» Аркадий Воловик. – Мало кто знает, что суперкомпьютеры помогли сохранить экологический баланс на планете: в годы "холодной войны" компьютеры моделировали изменения, происходящие в ядерных зарядах, и эти эксперименты позволили в итоге супердержавам отказаться от реальных испытаний атомного оружия. Так, мощный многопроцессорный компьютер Blue Pacific компании IBM используется именно для симуляции испытаний ядерного оружия. Успеху переговоров по прекращению ядерных испытаний на самом деле способствовали не дипломаты, а компьютерщики. «Compaq Computer Corp.» создает крупнейший в Европе суперкомпьютер на основе 2500 процессоров Alpha. Французская комиссия по ядерной энергии будет использовать суперкомпьютер, чтобы повысить безопасность французских арсеналов без проведения новых ядерных испытаний.
Не менее масштабные вычисления необходимы при проектировании авиационной техники. Моделирование параметров самолета требует огромных мощностей – например, для расчета поверхности самолета нужно вычислить параметры воздушного потока в каждой точке крыла и фюзеляжа, на каждом квадратном сантиметре. Иными словами, требуется решить уравнение для каждого квадратного сантиметра, а площадь поверхности самолета – десятки квадратных метров. При изменении геометрии поверхности все нужно пересчитывать заново. Причем эти расчеты должно быть сделаны быстро, иначе процесс проектирования затянется. Что касается космонавтики, то она началась не с полетов, а с расчетов. У суперкомпьютеров здесь огромное поле для применения».
В корпорации «Боинг» развернут суперкластер, разработанный компанией «Linux NetworX» и используемый для моделирования поведения топлива в ракете «Delta IV», которая предназначена для запуска спутников различного назначения. Из четырех взятых на рассмотрение кластерных архитектур «Боинг» выбрала кластер «Linux NetworX», поскольку он обеспечивает приемлемую стоимость эксплуатации, а по вычислительной мощности даже превосходит потребности проекта «Delta IV». Кластер состоит из 96 серверов, основанных на процессорах AMD Athlon 850 МГц, связанных между собой посредством высокоскоростных Ethernet-соединений.
В 2001 году корпорация IBM установит для министерства обороны США в Суперкомпьютерном центре на Гавайях 512-процессорный Linux-кластер вычислительной мощностью 478 миллиардов операций в секунду. Кроме Пентагона кластер будут использовать также другие федеральные ведомства и научные учреждения: в частности, кластер для прогнозирования скорости и направления распространения лесных пожаров. Система будет состоять из 256 тонких серверов IBM eServerx330, содержащих каждый по два процессора Pentium-III. Серверы будут связаны при помощи механизма кластеризации, разработанного компанией «Myricom».
Однако сфера применения суперкомпьютеров не ограничивается ВПК. Сегодня крупными заказчиками суперкомпьютеров являются биотехнологические компании.
«В рамках программы "Геном человека" IBM, – пишет Воловик, – получила заказ на создание компьютера с несколькими десятками тысяч процессоров. Впрочем, расшифровка генома человека не единственный пример использования компьютеров в биологии: создание новых медицинских препаратов сегодня возможно только с использованием мощных компьютеров. Поэтому фармацевтические гиганты вынуждены инвестировать значительные средства в вычислительную технику, образуя рынок для компаний "Hewlett-Packard", "Sun", "Compaq". Еще не так давно создание нового лекарства занимало 5-7 лет и требовало значительных финансовых затрат. Сегодня же лекарства моделируются на мощных компьютерах, которые не только «строят» препараты, но и оценивают их влияние на человека. Американские иммунологи создали препарат, способный бороться со 160 вирусами. Это лекарство было смоделировано на компьютере в течение полугода. Иной способ его создания потребовал бы нескольких лет работы».
А в Лос-Аламосской Национальной лаборатории всемирная эпидемия СПИДа была «прокручена» назад к ее истоку. Данные о копиях вируса СПИДа были заложены в суперкомпьютер, и это позволило определить время появления самого первого вируса – 1930 год.
В середине 1990-х годов образовался другой крупный рынок суперкомпьютеров. Этот рынок напрямую связан с развитием Интернета. Объем информации в Сети достиг невиданных размеров и продолжает увеличиваться. Причем информация в Интернете растет нелинейно. Наряду с увеличением объема данных меняется и форма их подачи – к тексту и рисункам прибавились музыка, видео, анимация. В результате возникли две проблемы – где хранить всевозрастающий объем данных и как сократить время поиска нужной информации.
Суперкомпьютеры применяются также во всех областях, где необходимо обработать большие объемы данных. Например, в банкинге, логистике, туризме, транспорте. Недавно «Compaq» заключила контракт с министерством энергетики США на поставку суперкомпьютеров ценой 200 миллионов долларов.
Хиронобу Сакагучи, президент компании «Square», производящей компьютерные игры, говорит: «Сегодня мы готовим фильм по мотивам своих игр. Square «обсчитывает» один кадр из фильма за 5 часов. На GCube эта операция занимает 1/30 секунды». Таким образом, на новый уровень выходит процесс медиа-производства: сокращается время работы над продуктом, существенно снижается стоимость фильма или игры.
Высокий уровень конкуренции заставляет игроков снижать цены на суперкомпьютеры. Один из методов снижения цены – использование в них множества стандартных процессоров. Это решение изобрели сразу несколько «игроков» рынка больших компьютеров. В результате к удовольствию покупателей на рынке появились серийные относительно недорогие серверы.
Действительно, проще разделить громоздкие вычисления на мелкие части и поручить выполнение каждой такой части отдельному недорогому серийно выпускаемому процессору. Например, ASCI Red фирмы «Intel», еще недавно занимавший первую строку в таблице TOP500 самых быстродействующих компьютеров мира, состоит из 9632 обычных процессоров Pentium. Другим важным преимуществом такой архитектуры является ее наращиваемость: путем простого увеличения числа процессоров можно поднять производительность системы. Правда, с некоторыми оговорками: во-первых, с увеличением числа отдельных вычислительных узлов производительность растет не в прямой пропорции, а несколько медленнее, часть времени неизбежно расходуется на организацию взаимодействия процессоров между собой, а во-вторых – значительно возрастает сложность программного обеспечения. Но эти проблемы успешно решаются, а сама идея «параллельных вычислений» развивается уже не первый десяток лет
«В начале девяностых годов возникла новая мысль, – пишет в «Известиях» Юрий Ревич, – которая получила название мета-компьютинга, или "распределенных вычислений". При такой организации процесса отдельные вычислительные узлы уже конструктивно не объединены в один общий корпус, а представляют собой отдельные самостоятельные компьютеры. Первоначально имелось в виду объединять в единый вычислительный комплекс компьютеры разного уровня, например, предварительная обработка данных могла производиться на пользовательской рабочей станции, основное моделирование – на векторно-конвейерном суперкомпьютере, решение больших систем линейных уравнений – на массивно-параллельной системе, а визуализация результатов – на специальной графической станции. Связанные высокоскоростными каналами связи отдельные станции могут быть и одного ранга, именно так устроен занявший теперь первую строку в TOP500 суперкомпьютер ASCI White фирмы IBM, который состоит из 512 отдельных серверов RS/6000 (компьютер, обыгравший Каспарова). Но настоящий размах идея «распределения» приобрела с распространением Интернета. Хотя каналы связи между отдельными узлами в такой сети трудно назвать быстродействующими, зато самих узлов можно набрать практически неограниченное количество: любой компьютер в любом районе мира можно привлечь к выполнению задачи, поставленной на противоположном конце земного шара».
Впервые широкая публика заговорила о «распределенных вычислениях» в связи с феноменальным успехом проекта поиска внеземных цивилизаций SETI@Home. 1,5 миллиона добровольцев, расходующих за свои деньги по ночам электроэнергию на благородное дело нахождения контакта с инопланетянами, обеспечивают вычислительную мощность 8 Тфлопс, что только немного отстает от рекордсмена – упоминавшийся суперкомпьютер ASCI White развивает «скорость» 12 Тфлопс. По признанию директора проекта Дэвида Андерсона, «одиночный суперкомпьютер, равный по мощности нашему проекту, стоил бы 100 миллионов долларов, а мы создали это практически из ничего».
Эффектно продемонстрировал возможности распределенных вычислений молодой студент-математик из США Колин Персиваль. За 2,5 года он с помощью 1742 добровольцев из пятидесяти стран мира установил сразу три рекорда в специфическом соревновании, целью которого является определение новых последовательных цифр числа «пи». Ранее ему удалось вычислить пяти– и сорокатриллионный знак после запятой, а в последний раз ему удалось установить, какая цифра стоит на квадриллионной позиции.