Смекни!
smekni.com

СуперЭВМ для геофизиков

Наталья Дубова

В 1979 году завершена разработка вычислительной системы ПС-2000

В ЦУПе до конца 90-х работал телеметрический вычислительный комплекс, в котором центральная система базировалась на «Эльбрусе-2», а предварительную обработку телеметрической информации осуществляла система ПС-2000

Поиск путей к рекордной производительности ЭВМ требует нестандартных решений. Мы уже рассказывали о реализации в 70-е годы различных принципов параллелизма в архитектуре вычислительных машин, которые позволяли сделать очередной рывок производительности. От миллиона операций в секунду к десяткам и сотне миллионов. Неоднократно упоминалось и о том, что основными пользователями советских суперЭВМ были те организации, которые решали секретные задачи обороны, реализовывали атомную и ядерную программы. Но в 1979 году в стенах Института проблем управления АН СССР завершается разработка высокопроизводительной вычислительной системы ПС-2000, предназначавшейся для сугубо мирных нужд.

Аббревиатура ПС означает «перестраиваемые структуры». Так называемыми однородными решающими полями — структурами из однотипных процессорных элементов, способных параллельно обрабатывать данные, — в ИПУ начали заниматься в конце 60-х. Лидером этого направления был ныне академик и директор института Ивери Варламович Прангишвили. Тогдашний директор академик Трапезников дал команде Прангишвили карт-бланш на два года работ. Положительный результат исследований давал зеленую улицу новому направлению, открывал перспективу построения реальной машины. Ну а отрицательный, наоборот, продемонстрировал бы бесперспективность такой разработки.

Через два года в активе молодых ученых были теоретически обоснованные принципы построения однородных решающих полей, авторское свидетельство, микроэлектронная реализация однородных структур, публикации в научных журналах и доклад на международном конгрессе. А дальше начинается почти фантастическая для тех лет история. Один из участников разработки Владислав Валентинович Игнатущенко рассказывает, что в 1972 году, на фоне общего потепления советско-американских отношений, интерес к работам ИПУ, уже известным в мире, проявил один из западных лидеров супервычислений, корпорация Control Data. Последняя предложила сотрудничество на паритетных началах: корпорация брала на себя строительство в Союзе заводов по производству новых дисковых носителей и современной элементной базы и трех вычислительных центров коллективного пользования. При этом ответственность за разработку многопроцессорной вычислительной системы с перестраиваемой структурой полностью ложилась на советских специалистов.

Этим заманчивым перспективам не суждено было сбыться. В США изменилась политическая ситуация, потепление сменилось похолоданием и работы были закрыты, фактически не начавшись. Однако энтузиазм западной фирмы по поводу отечественной разработки не прошел незамеченным в советских министерских креслах, и с 1975 года началась разработка вычислительной системы ПС-2000 исключительно собственными силами. Совместно с ИПУ в работе приняло участие Северодонецкое НПО «Импульс».

Замечательно то, что найденные специалистами из ИПУ принципы однородных решающих полей не требовали сверхмощной элементной базы для создания высокопроизводительной параллельной машины. Для ПС-2000 и последовавшей за ней системы ПС-3000 электронная промышленность не выпустила ни одной заказной схемы. При этом работавшие на «ширпотребе» вычислительные комплексы ПС-2000 обгоняли дорогостоящие «Эльбрусы», обеспечивая быстродействие до 200 млн. операций в секунду. Проходившие госиспытания восемь опытных образцов машины продемонстрировали на геофизических задачах суммарную производительность порядка 1 млрд. операций в секунду.

Геофизика и была основной сферой применения ПС-2000. Эта мощная машина позволила разгрести наконец залежи данных сейсморазведки, которые в огромных объемах накапливались ежегодно. Доступные вычислительные мощности в силу ограниченной производительности просто не успевали их обрабатывать — для этого необходимо было быстродействие раз в сто больше того, что имелось в совокупности. Поскольку такие задачи прекрасно поддавались распараллеливанию, их удалось с большой эффективностью решить на многопроцессорных комплексах ПС-2000. Были сделаны специальные экспедиционные вычислительные комплексы ЭГВК ПС-2000, отлично приспособленные к работе в условиях геофизических экспедиций, — они не занимали большой площади, потребляли мало энергии и не требовали больших расходов на эксплуатацию.

В ПС-2000 реализована архитектура с одним потоком команд и многими потоками данных (SIMD). Центральным компонентом системы является мультипроцессор, включавший от 8 до 64 одинаковых процессорных элементов. Процессорные элементы обрабатывали множество потоков данных по программе из общего модуля управления (один модуль на каждые восемь элементов).

Наиболее полное развитие принципы перестраиваемости получили в следующей разработке ИПУ, системе ПС-3000, которая была закончена к 1982 году. Здесь уже применялась архитектура множества потоков команд и множества потоков данных (MIMD). В ПС-3000 аппаратно реализована динамическая перестраиваемость структуры машины в зависимости от возможностей распараллеливания конкретного вычислительного процесса. Параллельно могли выполняться как разные задачи, так и фрагменты (ветви) отдельной задачи, а также скалярные и векторные команды каждой ветви. Система включала до четырех центральных скалярных процессоров, один или два векторных процессора — так называемые однородные решающие поля из восьми однотипных процессорных элементов, до четырех модулей общей параллельной оперативной памяти, до 16 периферийных процессоров. Все эти ресурсы могли перераспределяться динамически, то есть непосредственно в ходе выполнения вычислений, между задачами, ветвями, командами в соответствии с их заранее непредсказуемыми требованиями. Это и означает динамическую перестраиваемость структуры машины. Фактически ПС-3000 автоматически превращалась из векторной в асинхронно работающую систему, выполнявшую разные команды, и наоборот.

В отличие от своей предшественницы ПС-3000 решала в основном управляющие задачи — ее можно было использовать на верхних уровнях иерархических систем управления сложными технологическими процессами и производствами, для прямого управления сложными объектами (например, атомными реакторами) в реальном времени и для моделирования сложных объектов. Разрабатывалась и следующая система, ПС-3100, которая предназначалась для использования на верхних уровнях управления атомным реактором.

Ко всей этой бочке меда по поводу успешной разработки нетрадиционных машин по принципам однородных решающих полей приходится добавить ложку дегтя. Игнатущенко с горечью отмечает, что создание этих оригинальных машин не поддерживалось сильной программистской командой. В итоге системное программное обеспечение оказалось слабым местом ПС. Разработчики параллельных программ добивались впечатляющих результатов, когда имели непосредственный доступ ко всем архитектурным изюминкам этих систем, то есть программируя на уровне машинных команд. Но мощного языка программирования более высокого уровня для ПС-2000 так и не было сделано, а в ПС-3000 распараллелили только Фортран.