История отечественной вычислительной техники

Суперкомпьютеры XX века

В течение более чем 60 лет, прошедших с момента ввода в действие первой электронной цифровой вычислительной машины с программным управлением - ENIAC (Electronic Numerical Integrator and Computer, 1946 г.), производительность наиболее мощной установки, определяемая количеством выполняемых арифметических операций в секунду, возрастала, ориентировочно, 10-кратно за пятилетие. Рост производительности (мощности) вычислительных систем происходит, прежде всего, за счёт повышения быстродействия физико-технологической базы (электронных компонентов, устройств памяти, средств коммуникаций, ввода-вывода и отображения информации) и развития параллелизма обработки на всех системно-структурных уровнях, что связано с увеличением количества задействованных компонентов (обрабатывающих элементов, объёмов памяти, внешних устройств).

Динамика развития электронной вычислительной техники от её зарождени я и до наших дней охарактеризована в ряде публикаций, в том числе, автором данного очерка [1, 4]. Термин «суперкомпьютер» стал употребляться в период развития транзисторных вычислительных машин (это 2-е поколение вычислительной техники) применительно к десятку, затем сотне, а на сегодня – к тысяче наиболее мощных вычислительных установок мира (подразумевая тот или иной критерий оценки производительности). 1

В создании наиболее мощных вычислительных систем в своё время лидировала корпорация Control Data (США), серийно выпускавшая с 1965 г. машину CDC -6600 производительностью 3 млн. операций в секунду, а затем и более мощные. Впоследствии это направление работ выделилось как фирма Cray, выпускавшая одноименные суперкомпьютеры (см. ниже). Корпорация IBM, лидирующая по объёму выпускаемой компьютерной продукции, также выпускала весьма мощные установки в составе семейств машин 2-го и 3-го поколений (соответственно, IBM 709х и System 360) [1,4].

После 1975 г. большое внимание уделялось векторно-конвейерным суперкомпьютерам, построенным на схемотехнике с невысоким уровнем интеграции, но с высокой тактовой частотой – 100 МГц и более (американские системы Cray -1, -2, их разновидности и некоторые японские системы). Такие системы имели производительность процессора порядка 100 млн. операций в секунду и затем 1 млрд. оп./с, а также допускали комплексирование нескольких процессоров с общей оперативной памятью (ОЗУ) до суммарного уровня производительности 10 млрд. оп./с. Чтобы векторно-конвейерные структуры стали эффективными, требовались определенные усилия в разработке компиляторов и прикладных программ (тогда говорили, что суперкомпьютер – это машина, с которой трудно работать). Со временем такие структуры освоили и сейчас их разновидности повсеместно используются в микропроцессорах (см. ниже). Однако после 1985 г. в работах по дальнейшему повышению производительности суперкомпьютеров этого, можно сказать, «традиционного», направления проявились значительные трудности, выйти на уровень 100 трлн. оп./с не удалось. В этих условиях активизировался переход к массово-параллельным вычислительным системам (MPP - Massively Parallel Processing ) [2, 3, 14].

Вначале массово-параллельная обработка строилась в виде совокупности арифметических устройств (от нескольких десятков до тысяч), управляемых единым потоком команд программного управления (структура SIMD - single instruction , multiple data ). Позже, по мере развития микропроцессорной базы, возобладало распараллеливание программ на множество более или менее протяжённых ветвей, которые обрабатывались в многопроцессорной сети с памятью, распределённой по процессорным узлам (структура MPP- MIMD - multiple instruction , multiple data ). [9, 14, 15]

Для отечественных разработок высокопроизводительной вычислительной техники (общего назначения) 2-го поколения характерны машины «Весна» и БЭСМ-6 производительностью, соответственно, 0,3 и 1 млн.оп./с, построенные на транзисторной схемотехнике с тактовой частотой 5–10 МГц. Их промышленный выпуск начался в 1966-1968 гг. На основе таких машин строились комплексы в составе двух и более процессоров [5, 6, 7].

В составе Единой системы ЭВМ 3-го поколения (т. е. на базе интегральных схем) наиболее мощной была машина ЕС-1066, которая выпускалась серийно в течение 1985-1993гг.; двухмашинный комплекс (с общей внешней памятью) на этой основе имел производительность 10 млн. оп./с и оперативную память (на процессор) до 16 Мбайт. Велись разработки более мощных машин ЕС, но их промышленный выпуск не был осуществлён [8].

В период 1980–90 гг. различными организациями нашей страны (в т.ч., в рамках работ по ЕС ЭВМ) были введены в действие проблемно-ориентированные процессоры (векторно-матричные ускорители-сопроцессоры и др.), работавшие в комплексе с серийными вычислительными машинами.

Примечательной отечественной разработкой в классе высокопроизводительной вычислительной техники стала система ПС-2000 производительностью 100 млн. оп./с, содержавшая до 64-х арифметических устройств при едином потоке команд программы (структура SIMD ). Система выпускалась серийно с 1981 г. и была относительно недорогой, т. к. была построена весьма экономно на схемотехнике среднего (по тому времени) быстродействия [9]. Однако ограниченность формата числовых кодов (24 бита) и сложность программирования (свойственная принятой структуре) затрудняли применение этой системы.

Большое значение придавалось разработке вычислительной системы «Эльбрус-2»; её промышленный выпуск осуществлялся с 1985 г. [10]. Система содержала до 10 процессоров с общим ОЗУ и имела производительность на уровне 100 млн. оп./с, что обеспечило решение сложных задач того времени. В связи с этой системой промышленностью были освоены интегральные схемы (ЭСЛ-база) с повышенным быстродействием.

Следует также отметить выпущенные в тот период системы М-10, -13 с развитой векторной обработкой [11, 12] и вычислители с использованием арифметических операций в остаточных классах [13]. Своеобразие программирования и небольшие объёмы промышленного выпуска ограничили применения этих систем.

Намечавшиеся дальнейшие отечественные разработки суперкомпьютеров «традиционного» направления и соответствующей компонентной базы затянулись и остались невостребованы.

В 1983 - 1987 гг. в нашу жизнь, как тогда говорилось, «ворвался феномен микропроцессоров и персональных компьютеров », и это многое изменило.

По мере повышения уровня интеграции полупроводниковых приборов становилось возможным помещать в большую и затем в сверхбольшую интегральную схему (СБИС) все более полную структуру основной обрабатывающей части компьютера. Вначале такие СБИС, названные «микропроцессорами», имели невысокое быстродействие, оперировали с малоразрядными числами и не представляли интереса для построения сколько-нибудь мощных вычислительных систем. Однако микропроцессоры обладали функциональной универсальностью (поскольку имели программное управление), и потому были полезны для разнообразных средств массовой автоматизации, что соответствовало условиям их крупносерийного производства как дешёвой и надёжной продукции. В своём функциональном развитии микропроцессоры прошли несколько «поколений», соответствующих повышению уровня интеграции и быстродействия СБИС. Микропроцессор в сочетании со СБИС памяти, устройствами ввода-вывода данных, электропитания и некоторыми связующими компонентами стал также основой персонального компьютера, и это явилось решающей предпосылкой широкой информатизации общества.

Среди пользователей высказывалось мнение, что непосредственная доступность настольной «персоналки» значительно расширяет возможности решать задачи по сравнению с мощными, но труднодоступными и громоздкими вычислительными системами коллективного пользования (такие суждения имеют свой резон и в современных условиях).

После 1990 г. за рубежом «традиционные» суперкомпьютеры стали все более заметно вытесняться альтернативными системами в виде вышеупомянутых массово-параллельных структур (МРР - MIMD ) на базе 32- и 64-разрядных микропроцессоров (их можно считать «полнофункциональными» в отличие от предыдущих малоразрядных). В Западной Европе и России в качестве такой базы на начальном этапе хорошо показали себя транспьютеры. На первых порах эти микропроцессоры работали с тактовыми частотами 10–20 МГц и, попросту говоря, воспроизводили в одном чипе электронную часть вычислительных машин 2 - 3 поколений (процессор с небольшой кэш-памятью). При дальнейшем развитии СБИС быстродействие серийного микропроцессора вышло на уровень 1 млрд. оп./с, что соответствовало производительности суперкомпьютера 1980 - 1985 гг. К 2000 г. на этой базе многопроцессорные MPP-структуры стали монопольными в высокопроизводительных вычислительных системах. Списки Тор 500 наиболее мощных вычислительных установок мира, которые составляются с 1993 г., показывают, что производительность суперкомпьютеров стала возрастать более чем 20-кратно за пятилетие (т. е. 1000-кратно за 11 лет). [15, 16] 2

Произошедшая переориентация в построении суперкомпьютеров (и, вообще, вычислительной техники), определяемая использованием микропроцессорной базы, существенно затронула сферы создателей и потребителей этой техники: в «традиционном» программировании потребовалось освоить новые методы и средства распараллеливания основной обработки. Системные проекты, которые не вписались в эту обстановку, остались нереализованными. Недаром эти вновь появившиеся полнофункциональные микропроцессоры за рубежом называли « Killer Micros ». В нашей стране такая переориентация несколько задержалась, что отчасти связывалось с перестроечными процессами. По сути же дела, это объективные проявления прогресса: ЭСЛ-база полупроводниковых приборов себя исчерпала; полный процессор разместился в КМОП-чипе, и его быстродействие, которое вначале было невысоким, быстро возрастало. При этом использование крупносерийных микропроцессоров и, вообще, средств COTS ( Components on the Shelf - процессорные модули, память, коммутационно-сетевые средства и другие серийные изделия «с полки магазина») дало возможность продвинуть ранее проводившиеся исследования возможностей массово-параллельной обработки на этапы реализации систем с высокими технико-экономическими показателями и тем самым обеспечить потребности актуальнейших применений.

В выпуске микропроцессоров, используемых в компьютерах массового применения, а также и в суперкомпьютерах, лидирует корпорация Intel (США). Именно она первая стала изготавливать на своей базе вычислительные системы в составе нескольких сотен и тысяч процессоров, которые после 1990 г. по производительности стали опережать все другие и в 1996 - 1999 гг. достигли уровня 1 - 3 трлн. оп./с ( Teraflops ), объединяя 7 - 9,5 тыс. процессоров (система ASCI Red ). [2, 3, 16]. Позже, однако, Intel не выпускала большие вычислительные системы. 3

Примечания

1. Заметим, что слово «компьютер» (вместо ранее употреблявшихся в русскоязычной лексике ЭВМ, ЭЦВМ) достаточно оправдано, оно имеет латинский корень computo - вычисляю. В Оксфордском словаре трактовка слова computer появилась в 1897 г. применительно к механическому вычислительному устройству. C 1946 г. в словаре разделены понятия цифрового, аналогового и электронного компьютеров. В 1929 г. газета New York World использовала термин «super computing» - «супервычисления» в связи с табулятором фирмы IBM [2].

2. Можно проследить развитие параллельной обработки во внутренней структуре процессора. В электронно-ламповых машинах на выполнение одной операции (т. е. команды программы, содержащей арифметическую операцию) могло затрачиваться около сотни тактов схемотехники. В высокопроизводительных машинах 2 - 3 поколений операция выполнялась за 10–20 тактов, и при этом объём аппаратуры возрос на порядок (по количеству транзисторов, заменивших лампы). Эта тенденция продолжилась в последующих суперкомпьютерах. В процессорном ядре современного микропроцессора обычно выполняется 2 - 4 полных арифметических операции за такт, а при наличии векторного сопроцессора - 8 - 16 и более операций за такт. Вместе с тем тактовая частота стала на порядок выше той, что была в схемотехнике «традиционных» суперкомпьютеров.

3. Оценка производительности по количеству flops ( floating point operations per second – плавающих операций в секунду) связана с использованием теста Linpack при установлении рейтинга систем в списке Top 500; в России она стала широко использоваться после 2000 г. Ранее оценки по количеству выполняемых операций (или команд) в секунду ( ips - instructions per second ) связывались с сопоставлением вновь появляющихся вычислительных систем с системами предыдущих поколений. Возможное различие в таких оценках (в 2 - 3 раза) не влияет на общие положения, представленные в данном очерке.

Современный этап массово-параллельные вычисления на базе микропроцессоров

Этапы развития суперкомпьютеров. Оглавление
Литература
Статья помещена в музей 10.11.2008 с разрешения автора