Развитие суперкомпьютеров
операндов и запись результата. Например, если конвейер, выполняющий одну элементарную операцию за пять тактов, заменить на четыре таких же конвейера, то при длине векторов в 100 элементов векторная команда ускоряется всего в 3,69, а не в 4 раза. Эффект "отставания" роста производительности от увеличения числа конвейеров особенно заметен, когда процессор затрачивает значительное время на обмен данными между конвейером и памятью. Это обстоятельство не было должным образом оценено при разработке CYBER-205, и в результате архитектура "память-память" данной модели настолько ухудшила динамические параметры четырех конвейеров ее векторного процессора, что для достижения производительности, близкой к 200 MFLOPS, потребовалась очень высокая степень векторизации программ (порядка 1 тыс. элементов в векторе), т.е. потенциально самая мощная суперЭВМ 70-х годов реально могла эффективно обрабатывать только ограниченный класс задач. Конечно, подобный просчет негативно отразился на рыночной судьбе CYBER-205 и на всей программе суперЭВМ компании Control Data. После CYBER-205 фирма CDC прекратила попытки освоения рынка суперЭВМ.Использование в суперкомпьютерах NEC SX архитектуры "регистр-регистр" позволило нейтрализовать недостатки многоконвейерной обработки, и модель NEC SX-2 с 16 векторными конвейерами стала первой суперЭВМ, преодолевшей рубеж в миллиард операций с плавающей точкой за секунду - ее пиковая производительность составила 1,3 GFLOPS. Фирма Hitachi пошла по другому пути. В суперкомпьютерах серии S-810 ставка была сделана на параллельное выполнение сразу шести векторных команд. Далее Hitachi, продолжает линию этого семейства моделями S-810/60 и S-810/80; последняя занимает достойное третье место по результатам тестирования производительности на пакете LINPACK, уступая только грандам из CRAY и NEC. Относительную коммерческую стабильность суперкомпьютеров Hitachi можно объяснить тем, что они, как и суперЭВМ фирмы Fujitsu, полностью совместимы с системой IBM/370 по скалярным операциям. Это позволяет применять программы, созданные на IBM VS FORTRAN и в стандарте ANSI X3.9 (FORTRAN 77), а также использовать стандартную операционную среду MVS TSO/SPF и большинство системных расширений IBM, включая управление вводом/выводом для IBM-совместимых дисковых и ленточных накопителей. Другими словами, японские суперЭВМ фирм Hitachi и Fujitsu первыми в мире суперкомпьютеров использовали дружественный интерфейс для пользователей наиболее распространенной в то время вычислительной системы - IBM/370.
Натиск японских производителей был впечатляющим, но тут С. Крей наносит своевременный контрудар - в 1982 г. на рынке появилась первая модель семейства суперкомпьютеров CRAY X-MP, а двумя годами позже в Ливерморской национальной физической лаборатории им. Лоуренса был установлен первый экземпляр суперЭВМ CRAY-2. Машины от Cray Research опередили конкурентов в главном - они ознаменовали зарождение нового поколения ЭВМ сверхвысокой производительности, в которых векторно-конвейерный параллелизм дополнялся мультипроцессорной обработкой. Крей применил в своих компьютерах неординарные решения проблемы увеличения производительности. Сохранив в CRAY-2 и CRAY X-MP архитектуру и структурные наработки CRAY- 1, он сокрушил конкурентов сразу на двух фронтах: достиг рекордно малой длительности машинного цикла (4,1 нс ) и расширил параллелизм системы за счет мультипроцессорной обработки. В итоге Cray Research сохранила за собой звание абсолютного чемпиона по производительности: CRAY-2 продемонстрировала пиковую производительность 2 GFLOPS, обогнав NEC SX-2 - самую быструю японскую суперЭВМ - в полтора раза. Для решения проблемы оптимизации машинного цикла Крей пошел дальше японцев, которые уже владели технологией ECL-БИС, позволившей в Fujitsu VP достичь длительности машинного цикла в 7,5 нс. Помимо того что в CRAY-2 были использованы быстродействующие ECL-схемы, конструктивное решение блоков ЦП обеспечивало максимальную плотность монтажа компонентов. Для охлаждения такой уникальной системы, которая выделяла ни много ни мало 195 кВт, была использована технология погружения модулей в карбид фтора - специальный жидкий хладагент производства американской фирмы 3M.
Второе революционное решение, реализованное в суперкомпьютере CRAY- 2, заключалось в том, что объем оперативной памяти был доведен до 2 Гбайт. С.Крею удалось выполнить критерий балансировки производительности и емкости оперативной памяти по Флинну: "Каждому миллиону операций производительности процессора должно соответствовать не менее 1 Мбайт емкости оперативной памяти". Суть проблемы заключается в том, что типичные задачи гидро- и аэродинамики, ядерной физики, геологии, метеорологии и других дисциплин, решаемые с помощью суперЭВМ, требуют обработки значительного объема данных для получения результатов приемлемой точности. Eстественно, при таких объемах вычислений относительно малая емкость оперативной памяти вызывает интенсивный обмен с дисковой памятью, что в полном соответствии с законом Амдала ведет к резкому снижению производительность системы.
Все-таки новый качественный уровень суперкомпьютера CRAY-2 определялся не столько сверхмалой длительностью машинного цикла и сверхбольшой емкостью оперативной памяти, сколько мультипроцессорной архитектурой, заимствованной у другой разработки Cray Research - семейства многопроцессорных суперЭВМ CRAY X-MP. Его три базовые модели - X-MP/1, X-MP/2 и X-MP/4 - предлагали пользователям одно-, двух- или четырехпроцессорную конфигурацию системы с производительностью 410 MFLOPS на процессор. Спектр доступных вариантов расширялся за счет возможности установки памяти разного объема (от 32 до 128 Мбайт на систему). Такой ориентированный на рынок подход к построению суперкомпьютера впоследствии принес фирме Cray Research ощутимый коммерческий эффект. Мультипроцессорная архитектура суперкомпьютеров производства CRAY была разработана с учетом достижений и недостатков многопроцессорных мэйнфреймов, в первую очередь фирмы IBM. В отличие от "классических" операционных систем IBM, которые используют для взаимодействия процессов механизм глобальных переменных и семафоров в общей памяти, мультипроцессорная архитектура CRAY предполагает обмен данными между процессорами через специальные кластерные регистры, кроме того, для обслуживания взаимодействия процессов в архитектуре CRAY предусмотрены аппаратно-реализованные семафорные флажки, которые устанавливаются, сбрасываются и анализируются с помощью специальных команд, что также ускоряет межпроцессорный обмен и в итоге увеличивает системную производительность. В результате этих новшеств коэффициент ускорения двухпроцессорной суперЭВМ CRAY X-MP/2 по отношению к однопроцессорной CRAY X-MP/1 составляет не менее 1,86.
В отличие от семейства CRAY X-MP, модели которого работают под управлением операционной системы COS (Cray Operating System), CRAY-2 комплектовалась новой операционной системой CX-COS, созданной фирмой Cray Research на базе Unix System V.
Во второй половине 80-х годов Control Data, "сошедшая с дистанции" после неудачи с моделью CYBER-205 вновь появляется на рынке сперЭВМ. Строго говоря, за разработку новой восьмипроцессорной суперЭВМ взялась ETA Systems - дочерняя фирма CDC, - однако в этом проекте был задействован практически весь потенциал Control Data. Вначале проект под названием ETA-10, получивший поддержку правительства через контракты и дотации потенциальным пользователям вызвал оживление среди специалистов по сверхскоростной обработке. Ведь новая суперЭВМ должна была достичь производительности в 10 GFLOPS, т.е. в пять раз превзойти CRAY-2 по скорости вычислений. Первый образец ETA-10 с одним процессором производительностью 750 MFLOPS был продемонстрирован в 1988 г., однако дальше дела пошли хуже. Во втором квартале 1989 г. Control Data объявила о свертывании деятельности компании ETA Systems из-за нерентабельности производства.
Не остался в стороне от проблем сверхвысокой производительности и гигант компьютерного мира - фирма IBM. Не желая уступать своих пользователей конкурентам из Cray Research, компания приступила к программе выпуска старших моделей семейства IBM 3090 со средствами векторной обработки (Vector Facility). Самая мощная модель этой серии - IBM 3090/VF-600S оснащена шестью векторными процессорами и оперативной памятью емкостью 512 Мбайт. В дальнейшем эта линия была продолжена такими машинами архитектуры ESA, как IBM ES/9000-700 VF и ES/9000-900 VF, производительность которых в максимальной конфигурации достигла 450 MFLOPS.
Еще одна известная в компьютерном мире фирма - Digital Equipment Corp. - в октябре 1989 г. анонсировала новую серию мэйнфреймов с векторными средствами обработки. Старшая модель VAX 9000/440 оснащена четырьмя векторными процессорами, повышающими производительность ЭВМ до 500 MFLOPS.
Высокая стоимость суперЭВМ и векторных мэйнфреймов оказалась не по карману достаточно широкому кругу заказчиков, потенциально готовых воспользоваться компьютерными технологиями параллельных вычислений. К их числу относятся мелкие и средние научные центры и университеты, а также производственные компании, которые нуждаются в высокопроизводительной, но сравнительно недорогой вычислительной технике.
С другой стороны, такие крупнейшие производители суперЭВМ, как Cray Research, Fujitsu, Hitachi и NEC, явно недооценили потребности "средних" пользователей, сосредоточившись на достижении рекордных показателей производительности и, к сожалению, еще более рекордной стоимости своих изделий. Весьма гибкой оказалась стратегия Control Data, которая после неудачи с CYBER-205 основное внимание уделила выпуску научных компьютеров среднего класса. На конец 1988 г. производство машин типа CYBER-932 вдвое превысило выпуск старших моделей серии CYBER-900 и суперЭВМ с маркой CDC. Основным конкурентом Control Data на рынке малогабаритных параллельных компьютеров, которые получили общее название "мини-суперЭВМ", стала будущий лидер в мире мини-суперкомпьютеров фирма Convex Computer. В своих разработках Convex первой реализовала векторную архитектуру с помощью сверхбольших интегральных схем (СБИС) по технологии КМОП. В результате пользователи получили серию относительно недорогих компьютеров по цене менее 1 млн. долл., обладающих производительностью от 20 до 80 MFLOPS. Спрос на эти машины превзошел все ожидания. Явно рискованные инвестиции в программу Convex обернулись быстрым и солидным доходом от ее реализации. История развития суперкомпьютеров однозначно показывает, что в этой сложнейшей области инвестирование высоких технологий, как правило, дает положительный результат - надо только, чтобы проект был адресован достаточно широкому кругу пользователей и не содержал слишком рискованных технических решений. Convex, которая, получив такое преимущество на старте, стала успешно развиваться. Сначала она выпустила на рынок семейство Convex C-3200, старшая модель которого C-3240 имеет производительность 200 MFLOPS, а затем - семейство Convex C-3800, состоящее из четырех базовых моделей в одно-, двух- , четырех- и восьмипроцессорной конфигурации. Самая мощная машина этой серии Convex C-3880 имеет производительность, достойную "настоящей" суперЭВМ 80-х годов, и при тестировании на пакете LINPACK обогнала по скорости вычислений такие системы, как IBM ES/9000-900 VF, ETA-10P и даже CRAY-1S. Отметим, что Cray Research, выпускает мини-суперЭВМ CRAY Y-EL, также реализованную на технологии КМОП-СБИС. Этот компьютер может поставляться в одно-, двух- или четырехпроцессорной конфигурации и обеспечивает производительность 133 MFLOPS на процессор. Объем оперативной памяти изменяется в зависимости от пожеланий заказчика в диапазоне 256-1024 Мбайт.
Доминирование векторных суперкомпьютеров в государственных программах и устойчивое положение "царя горы", занятое Cray Research, явно не устраивало сторонников MIMD-параллелизма. Первоначально в этот класс были включены многопроцессорные мэйнфреймы, а впоследствии к ним добавились суперЭВМ третьего поколения с мультипроцессорной структурой. И те и другие основаны на сформулированном фон Нейманом принципе управления вычислительным процессом по командам программы, или управления потоком команд (Instruction Flow). Однако примерно с середины 60-х годов математики стали обсуждать проблему разбиения задачи на большое число параллельных процессов, каждый из которых может обрабатываться независимо от других, а управление выполнением всей задачи осуществляется путем передачи данных от одного процесса к другому. Этот принцип, известный как управление потоком данных (Data Flow), в теории выглядит очень многообещающим. Теоретики DataFlow-параллелизма предполагали, что систему можно будет организовать из небольших и потому дешевых однотипных процессоров. Достижение сверхвысокой производительности целиком возлагалось на компилятор, осуществляющий распараллеливание вычислительного процесса, и ОС, координирующую функционирование процессоров. Внешняя простота принципа MIMD-параллелизма вызвала к жизни множество проектов.
Из наиболее известных разработок систем класса MIMD стоит упомянуть IBM RP3 (512 процессоров, 800 MFLOPS), Cedar (256 процессоров, 3,2 GFLOPS; компьютер одноименной фирмы), nCUBE/10 (1024 процессора, 500 MFLOPS) и FPS-T (4096 процессоров, 65 GFLOPS). К сожалению, ни один из этих проектов не завершился полным успехом и ни одна из упомянутых систем не показала объявленной производительности. Дело в том, что, как и в случае с матричными SIMD-суперкомпьютерами, слишком много технических и программных проблем было связано с организацией коммутатора, обеспечивающего обмен данными между процессорами. Кроме того, процессоры, составляющие MIMD- систему, оказались на практике не столь уж маленькими и дешевыми. Как следствие, наращивание их числа приводило к такому увеличению габаритов системы и удлинению межпроцессорных связей, что стало совершенно очевидно: при существовавшем в конце 80-х годов уровне элементной базы реализация MIMD-архитектуры не может привести к появлению систем, способных конкурировать с векторными суперкомпьютерами.
Неординарное решение проблемы коммутационной сети процессоров MIMD- системы предложила мало кому известная фирма Denelcor, которая выполнила разработку многопроцессорной модели HEP-1. Этот суперкомпьютер был задуман как MIMD-система, содержащая от 1 до 16 исполнительных процессорных элементов и до 128 банков памяти данных по 8 Мбайт каждый. Система из 16 процессоров должна была обладать максимальной производительностью 160 MFLOPS при параллельной обработке 1024 процессов (по 64 процесса в каждом из 16 ПЭ). Любопытной архитектурной особенностью HEP-1 было то, что MIMD-обработка множества процессов выполнялась без использования коммутационной сети, которую заменила так называемая "вертушка Флинна".
Напомним, что идея "вертушки Флинна" заключается в организации мультипроцессора как нелинейной системы, состоящей из группы процессоров команд (ПрК), каждый из которых "ведет" свой поток команд, и общего для всех ПрК набора арифметических устройств, циклически подключаемых к каждому из ПрК для выполнения их команд. Нетрудно заметить, что эффект "вертушки Флинна" состоит в сокращении объема, занимаемого арифметическими устройствами в многопроцессорной системе, поскольку на "арифметику" может приходиться до 60% аппаратных ресурсов центрального процессора.
На первый взгляд структура HEP-1 практически не отличается от классической "вертушки Флинна" - такой же циклический запуск команд, принадлежащих разным процессам, и те же общие для множества процессов арифметические устройства. Однако на входе исполнительных устройств переключаются не процессоры команд, а процессы с помощью специального механизма выборки, сохранения и восстановления слов состояния каждого исполняемого процесса. Во-вторых, в HEP-1 применяются конвейерные исполнительные устройства, что позволяет арифметическим устройствам обрабатывать существенно больше операций, чем прототипам мэйнфреймов. Казалось бы, наконец найдено решение, объединяющее достоинства