Cray SSS: Сверхпараллельная архитектура на основе памяти
Cray-3/SSS
Cray SSS: новаторский суперкомпьютер с массовно-параллельной архитектурой. Объединение Cray 3 и SIMD-процессора в памяти. История и особенности проекта.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Cray 3/SSS (Super Scalable System) был новаторским проектом создания суперкомпьютера с массой параллельных вычислительных элементов, объединившим два процессора Cray 3 с новым SIMD-процессором, полностью реализованным в основной памяти компьютера. Позже рассматривалась возможность его использования в качестве дополнения к серии Cray T90 под названием T94/SSS, однако нет никаких свидетельств того, что эта модель была когда-либо создана.
The Cray 3/SSS (Super Scalable System) was a pioneering massively parallel supercomputer project that bonded a two processor Cray 3 to a new SIMD processing unit based entirely in the computer's main memory. It was later considered as an add on for the Cray T90 series in the form of the T94/SSS, but there is no evidence this was ever built.
Дизайн
Проект SSS начался после того, как инженер из Центра исследований суперкомпьютеров (SRC), Кен Иобст, заметил новый способ реализации параллельного компьютера. Предыдущие массивно-SIMD архитектуры, такие как Connection Machines, состояли из большого числа отдельных вычислительных элементов, каждый из которых включал простой процессор и некоторую локальную память. Результаты, требующие передачи между элементами, передавались по сетевым каналам со сравнительно низкой скоростью. Это являлось серьезным узким местом в большинстве параллельных систем, ограничивающим их применение областями, где можно было снизить эти взаимозависимости. Идея Иобста заключалась в использовании сверхбыстрого оборудования рассеяния/сбора данных Cray 3 для перемещения данных вместо отдельной сети. Это обеспечивало бы как минимум на порядок более высокую производительность, чем системы, основанные на "широкодоступном" оборудовании. Более того, машина по-прежнему включала бы полноценный процессор Cray 3, позволяя ей использовать как SIMD, так и векторные инструкции в зависимости от специфики задачи. Оставалось лишь выбрать процессор. Поскольку Cray 3 уже имел векторный процессор для ресурсоемких вычислений, сами SIMD-процессоры могли быть значительно проще, обрабатывая только самые базовые инструкции. Уникальность концепции SSS заключалась именно в этом: поскольку проблема большинства SIMD-машин заключалась в перемещении данных, Иобст предложил встраивать процессоры непосредственно в чипы SRAM. Обычно память в чипах RAM организована в формате строк и столбцов, с контроллером на чипе, который параллельно считывает запрошенные данные из столбцов, а затем собирает результаты в 32- или 64-битные слова для обработки центральным процессором. В концепции SSS чипы также оснащались серией однобитовых компьютеров, работающих с определенным столбцом по всем строкам одновременно – это означало, что процессоры могли получать доступ к данным с очень высокой скоростью, примерно в 100 раз быстрее, чем обычно. В сочетании со скоростью "сети", реализованной оборудованием рассеяния/сбора, система могла быть масштабирована до размеров, значительно превышающих существующие SIMD-системы. Каждый процессор мог принимать две команды каждые 200 наносекунд, что соответствовало эффективному такту в 100 нс (10 МГц). Полностью оснащенная система с 1 024 000 процессоров обладала бы суммарной вычислительной мощностью 32 ТФлопс.
The SSS project started after a Supercomputing Research Center (SRC) engineer, Ken Iobst, noticed a novel way to implement a parallel computer. Previous massively SIMD designs, like the Connection Machines, consisted of a large number of individual processing elements consisting of a simple processor and some local memory. Results that needed to be passed from element to element were passed along networking links at relatively slow speeds. This was a serious bottleneck in most parallel designs, which limited their use to certain roles where these interdependencies could be reduced. Iobst's idea was to use the super fast scatter/gather hardware from the Cray 3 to move the data around instead of using a separate network. This would offer at least an order of magnitudes better performance than systems based on "commodity" hardware. Better yet, the machine would still include a complete Cray 3 CPU, allowing the machine as a whole to use either SIMD or vector instructions depending on the particulars of the problem. Now all that remained was the selection of a processor. Since the Cray 3 already had a vector processor for heavy computing, the SIMD processors themselves could be considerably simpler, handling only the most basic instructions. This is where the SSS concept was truly unique; since the problem with most SIMD machines was moving data around, Iobst suggested that the processors be built into the SRAM chips themselves. Memory is normally organized within the RAM chips in a row/column format, with a controller on the chip reading requested data from the chip in parallel across the rows, then assembling the results into 32 or 64 bit words for processing by the CPU. In the SSS concept, the chips would also be equipped with a series of single bit computers operating on a particular column of all the rows are at once—this meant that the processors could access data at very high speeds, about 100x as fast as normal. Add to this the speed of the "network" implemented by the scatter/gather hardware, and the system could be scaled to sizes considerably greater than existing SIMD systems. Each processor could accept two commands every 200 nanoseconds, for an effective cycle rate of 100 ns (10 MHz). A fully equipped system with 1,024,000 processors would have an aggregate processing capability of 32 TFlops.
Строительство
В августе 1994 года АНБ заключило контракт с Cray Computer Corporation (CCC) на разработку системы, состоящей из 512 000 процессоров, с плотностью размещения 2048 процессоров на чип памяти RAM. Компания National Semiconductor была выбрана для производства проекта Iobst, где Марк Нордер и Дженнифер Шредер внесли в него изменения и подготовили к производству. Первая половина машины, состоящая из 256 000 процессоров, была впервые запущена 2 марта 1995 года. (24 марта 1995 года Cray Computer Corp. подала заявление о банкротстве в соответствии с главой 11 Кодекса США о банкротстве.)
In August 1994 the NSA contracted Cray Computer Corporation (CCC) to build a 512,000 processor design with 2,048 processors per RAM chip. National Semiconductor was selected to produce Iobst's design, where Mark Norder and Jennifer Schrader modified the design and laid it out for production. The first half of the machine, with 256,000 processors, was run for the first time on 2 March 1995. (On March 24, 1995 Cray Computer Corp' filed a voluntary petition under Chapter 11 of the US Bankruptcy Code.)