Еще год-другой назад многие, в том числе автор этой статьи, предсказывали, что векторно-параллельные (PVP, parallel vector processing) суперкомпьютеры будут все больше вытесняться массивно-параллельными системами. Для такого прогноза были весьма серьезные основания. Однако в конце 1998 года ведущие производители PVP-компьютеров, - NEC и SGI/Cray Research, объявив о выпуске систем SX-5 и Cray SV1 соответственно, продемонстрировали, что развитие PVP-архитектуры не останавливается. Настоящая статья содержит обзор архитектуры новых суперкомпьютеров NEC SX-5, самых высокопроизводительных на сегодня PVP-систем.
Архитектура PVP — «классика», которой учат студентов во всем мире. Суперкомпьютеры этой архитектуры на протяжении двадцати с лишним лет служат источником архитектурных идей при разработке компьютеров других классов. Векторные операции (правда, с векторами длиной всего 2 элемента) в последнее время активно внедряются в архитектуру микропроцессоров (AMD 3DNow!, расширение системы команд Katmai в Pentium III).
В применениях, требующих высокой пропускной способности оперативной памяти, суперкомпьютеры PVP-архитектуры по-прежнему сильно опережают конкурентов. Типичный пример операций, для которых характерна плохая локализация в кэше и соответственно повышенные требования к пропускной способности памяти, — операции «сборки/разборки» (gather/scatter), в которых обращение циклически происходит к элементам массива A(INDEX(I)), то есть не последовательно.
PVP-системы и по сей день работают в крупнейших отечественных суперкомпьютерных центрах, в том числе, в ИВВиБД (Санкт-Петербург) и ОИЯИ (Дубна).
Краткая история семейства SX
NEC имеет давние традиции производства больших универсальных ЭВМ; достаточно упомянуть выпускавшиеся в 80-х годах мэйнфреймы ACOS. В это же время появились и первые суперкомпьютеры семейства SX. Процессоры в SX-1 имели пиковую производительность 570 MFLOPS. Во второй половине 80-х были разработаны NEC SX-2 со временем цикла 6 нс; пиковая производительность старшей модели SX2-400 составила 1,3 GFLOPS. В 1989 году была выпущена NEC SX-3 с пиковой производительностью центрального процессора около 5 GFLOPS, имевшая до 4 процессоров. Хотя SX-3 по-прежнему сохраняют лидирующие позиции в рейтингах производительности на тестах Linpack, к современному поколению суперкомпьютеров следует относить КМОП-cистемы NEC SX-4 (объявлена в 1995 году) и SX-5.
Суперкомпьютеры различных поколений SX совместимы снизу вверх. При этом архитектуры SX-4 и SX-5 особенно близки. Учитывая, что объем доступной информации о них ограничен и что данных о SX-4 несколько больше, мы будем во многих случаях рассказывать о SX-4, указывая затем на основные отличительные черты SX-5. Автор выражает благодарность Ф. Танненбауму из компании HNSX Supercomputers (http://www.hstc.necsyl.com) за предоставленную информацию.
Следует подчеркнуть, что суперкомпьютеры, как и мэйнфреймы, достаточно долго продолжали использовать ECL-технологию, которая позволяла достигнуть высоких тактовых частот. КМОП-процессоры первоначально характеризовались более низкими частотами. В частности, время цикла в NEC SX-4 составляет 8 нс против 6 нс в SX-2, и лишь в SX-5 время цикла стало меньше (4 нс). Однако эти процессоры по-прежнему уступают SX-3 со временем цикла 2,5-2,9 нс в зависимости от модели.
С точки зрения производительности основным преимуществом КМОП-технологии с самого начала была гораздо более высокая степень интеграции (CБИС в процессорах SX-5 содержат порядка 15 млн. транзисторов). Кардинальное уменьшение числа компонентов, из которых состоит центральный процессор (в предельном случае - одна микросхема), при использовании КМОП-технологии означает минимум внешних соединений, привносящих основную задержку при передаче сигналов. Определяющей становится не традиционная задержка на вентиль, а задержка при передаче сигналов между микросхемами или между платами.
С точки зрения надежности применение КМОП-микросхем, изготавливаемых по отлаженной технологии, тоже дает преимущества перед ECL, не говоря уже об уменьшении числа соединений и компонентов процессора, что также упрощает диагностику неисправностей.
Наконец, КМОП-микросхемы потребляют гораздо меньше электроэнергии. В результате в суперкомпьютерах на их базе возникает не только существенно экономить электроэнергию, но и уменьшить затраты на охлаждение. Благодаря применению КМОП-технологии системы SX-4 стали первыми в мире суперкомпьютерами PVP-архитектуры, работающими с воздушным, а не с жидкостным охлаждением (мы не учитываем здесь минисуперкомпьютеры PVP-архитектуры). Этим свойством обладают и модели SX-5.
Архитектура SX-4 и SX-5
К основным компонентам архитектуры NEC SX-5, как и SX-4, относятся центральный процессор, подсистема оперативной памяти и подсистема ввода-вывода. Данные компоненты объединяются в узлы SMP-архитектуры, которые, в свою очередь, связаны через межсоединение Internode Crossbar Switch (IXS). При этом вся память всех узлов является общей; иными словами, многоузловые модели SX-4/5 обладают архитектурой NUMA.
Центральные процессоры
Каждый центральный процессор в NEC SX-5 состоит из двух основных блоков: векторного и скалярного устройств.
Начнем с векторного устройства, наличие которого как раз и служит обязательным признаком PVP-архитектуры. Аргументы векторных команд располагаются в векторных регистрах. Длина векторного регистра в SX-4 cоставляет 32 элемента. В архитектуре SX имеется 8 операционных векторных регистров (над ними выполняются основные команды) и 64 векторных регистра данных. Последние в основном играют роль своеобразного «векторного кэша». Только часть команд SX-4 работает с этими регистрами, которые могут получать данные из исполнительных конвейеров одновременно с операционными регистрами.
В SX-5 емкость всех векторных регистров, выступающих в качестве программно адресуемого векторного кэша, составляет 144 Кбайт. В большинстве случаев применение векторных регистров позволяет сильно уменьшить трафик при обмене данными между центральным процессором и оперативной памятью.
Исполнительные блоки векторного устройства конвейеризованы. Основные конвейеры в SX-4/5 — блоки сложения/сдвига, умножения, деления и логических операций. Как это характерно для многих PVP-систем, операции над векторами могут выполняться при участии маски, для чего в архитектуре предусмотрено наличие регистров маски.
Сравнительные характеристики
Младшие модели
Средние модели
Старшие модели
NEC SX-5M
NEC SX-4/C
Cray T94
NEC SX5-16
NEC SX-4
Cray T932
NEC SX-5
NEC SX-4
Число ЦП
4-8
1-4
1-4
8-16
4-32
16-32
16-512
32-512
Время цикла, нс
4
8
2,2
4
8
2,2
4
8
Пиковая производительность ЦП, GFLOPS
8
2
1,8
8
2
1.8
8
2
Емкость ОП, Гбайт
до 64
до 2
0,5-1
до 128
2-8
4-8
до 4096
до 128
Пропускная способность ОП, Гбайт/с
до 512
8-64
100
до 1024
64-512
800
до 32
до 192 Тбайт/c
Пропускная способность ввода-вывода, Гбайт/с
до 6,2
1,6
8
до 12,6
3,2-6,4
35
до 403,2
до 102,4
В SX-4 векторное устройство содержит 8 блоков, которые являются фактически самостоятельными векторными устройствами и имеют по 4 конвейера вышеуказанного типа. Каждый такой блок сам по себе отвечает архитектуре SX и работает с регистрами длиной 32 элемента.
Все эти блоки соединены между собой через коммутатор. В результате образуется массив из 32 векторных конвейеров, который разбивается на 4 группы по 8 конвейеров в каждой в соответствии с типом выполняемых конвейером операций. Особенности строения ЦП SX-4 позволяют выполнять операции над векторами длиной до 256 элементов.
Группы конвейеров могут работать параллельно, что при одновременном выполнении сложения и умножения над векторами определяет пиковую производительность процессора SX-4 в 2 GFLOPS. Для SX-5 группа содержит уже 16 конвейеров, плюс тактовая частота SX-5 (250 МГц) вдвое выше, чем SX-4; cоответственно, пиковая векторная производительность SX-5 в четыре раза выше - 8 GFLOPS. Если не считать процессор Hitachi S3800, то это, насколько известно автору, самая высокая производительность центрального процессора и среди PVP-систем, и среди микропроцессоров RISC- и «пост-RISC»-архитектуры (то есть с поддержкой VLIW, как в Merced или в российском проекте E2k), как уже действующих, так и еще только анонсированных.
Скалярное устройство SX-4/5 логически выглядит как микропроцессор, наделенный всеми основными чертами современных высокопроизводительных представителей RISC-архитектуры: суперскалярность, внеочередное выполнение команд, предсказание переходов, предварительная выборка данных и т.п.
Известно, что блок-схемы скалярного устройства SX-4 и процессора SGI/Mips R10000 близки, и что NEC является одним из основных производителей этого микропроцессора. Конечно, нельзя сказать, что это «почти одинаковые» процессоры: из 223 RISC-команд SX-4 116 команд - векторные; SX-4 обеспечивает совместимость с SX-2 и SX-3, и т.д.
В SX-4 целые числа могут быть как 32-х, так и 64-разрядными. Для чисел с плавающей запятой применяется стандарт IEEE 754 (как для 32-х, так и для 64-разрядных чисел). Кроме того, в отличие от R10000, SX-4 может работать со 128-разрядными числами с плавающей запятой расширенной точности и с форматами чисел с плавающей запятой, используемыми в PVP-системах Cray и мэйнфреймах IBM. При этом производительность SX-4 не зависит от формата представления, а сам этот формат выбирается при компиляции.
Относительно скалярного устройства SX-5 мы не располагаем данными о схожести его микроархитектуры с SX-4 или R10000, хотя можно предположить, что основные ее особенности сохранены. Кстати, и тактовая частота SX-5 совпадает с максимальной на сегодня частотой R10000. Cоответственно, к пиковой векторной производительности (8 GFLOPS) следует приплюсовать пиковую скалярную производительность. Она равна 500 MFLOPS, поскольку скалярное устройство SX-5, как и R10000, может выдавать два результата с плавающей запятой за такт (сложение плюс умножение).
Известно, что скалярное устройство в SX-5 содержит 64-килобайтный кэш данных и 64-килобайтный кэш команд, а также 128 64-разрядных регистров общего назначения. Все команды выдает на выполнение скалярное устройство, способное декодировать до 4 команд за такт.
Долговременное хранение объектов в объектно-ориентированных приложениях В. Шринивасан Объектно-ориентированные модели быстро завоевывают популярность у программистов. В большинстве приложений применяются данные, постоянно хранящиеся в памяти, поэтому реальную практическую пользу могут принести только те приложения, которые поддерживают такого рода объекты.
Для реализации этой поддержки предлагаются три класса решений.
Векторно-параллельные суперкомпьютеры NEC Михаил Кузьминский Еще год-другой назад многие, в том числе автор этой статьи, предсказывали, что векторно-параллельные (PVP, parallel vector processing) суперкомпьютеры будут все больше вытесняться массивно-параллельными системами. Для такого прогноза были весьма серьезные основания.
Проблемы сетевых файловых систем Виктор Коваленко Вряд ли кто-нибудь сегодня станет возражать против того, что одним из краеугольных камней любой вычислительной среды является файловая система. Более того, существует глубокая взаимосвязь модели управления файлами с возможностями и формами работы, доступными как пользователям, так и программистам.
В ожидании Merced — корпорация Intel?
?и остальной мир
Премьера Pentium III
Наследие Digital на службе у Compaq
Высоты масштабирования Linux
HP делится
Большое объединение
Моцарт и Internet
Новая версия HP-UX