Goodyear MPP - Goodyear MPP
Goodyear Massively Parallel Processor ( MPP ) была массивно параллельной обработки суперкомпьютер построен Goodyear Aerospace для НАСА космических полетов Годдарда . Он был разработан для обеспечения огромной вычислительной мощности при меньших затратах, чем другие существующие архитектуры суперкомпьютеров, за счет использования тысяч простых элементов обработки вместо одного или нескольких очень сложных процессоров . Разработка MPP началась примерно в 1979 году; он был доставлен в мае 1983 года и находился в общем использовании с 1985 по 1991 год.
Он был основан на более раннем процессоре массива STARAN компании Goodyear , компьютере с 1-битным обрабатывающим элементом (PE) размером 4x256 . MPP представлял собой двумерный массив размером 128x128 PE размером 1 бит. Фактически, PE 132x128 были настроены с добавлением конфигурации 4x128 для обеспечения отказоустойчивости для замены до 4 строк (или столбцов) процессоров в случае возникновения проблем. PE работали в режиме одной инструкции, множественных данных (SIMD) - каждый PE выполнял одну и ту же операцию одновременно с разными элементами данных под управлением микропрограммного блока управления.
После того , как MPP был отправлен в отставку в 1991 году, она была передана в Смитсоновский институт , и сейчас находится в коллекции Национального музея авиации и космонавтики «S Стивен Удвар-Хейзи . На смену Годдарду пришли компьютеры с массовым параллелизмом MasPar MP-1 и Cray T3D .
Приложения
Первоначально MPP был разработан для высокоскоростного анализа спутниковых изображений. В ранних тестах он мог выделить и разделить различные участки земли на снимках Landsat за 18 секунд по сравнению с 7 часами на DEC VAX-11/780 .
После того, как система была запущена в производство, Управление космической науки и приложений НАСА запросило предложения от ученых со всей страны по тестированию и внедрению широкого спектра вычислительных алгоритмов на MPP. Было принято 40 проектов, которые составили «Рабочую группу MPP»; результаты большинства из них были представлены на Первом симпозиуме по границам массовых параллельных вычислений в 1986 году.
Некоторые примеры приложений, которые были сделаны из MPP:
- Обработка сигналов радиолокационных данных с синтезированной апертурой
- Создание топографических карт с помощью стереоанализа спутниковых снимков
- Математическое моделирование в циркуляции океана
- Компьютерная графика с трассировкой лучей
- Нейронные сети
- Решение больших систем линейных уравнений
- Моделирование переноса заряженных частиц космических лучей
- Наборы Мандельброта высокого разрешения
Архитектура системы
Общее оборудование MPP состояло из модуля массива, модуля управления массивом, промежуточной памяти и хост-процессора.
Блок массива был сердцем MPP, представляя собой массив 128x128 из 16 384 обрабатывающих элемента. Каждый PE был связан с четырьмя ближайшими соседями - севером, югом, востоком и западом. Массив может быть сконфигурирован в виде плоскости, цилиндра, гирляндной цепи или тора. PE были реализованы на специальной микросхеме LSI « кремний-на-сапфире» , которая содержала восемь PE в виде подмассива 2x4. Каждый из PE имел арифметические и логические блоки, 35 регистров сдвига и 1024 бита оперативной памяти, реализованной с помощью стандартных микросхем памяти. Процессоры работали по принципу побитовых срезов и могли работать с данными переменной длины. Рабочая частота массива составляла 10 МГц. Состояния шины данных всех 16 384 PE были объединены в дерево включающих или логических элементов, единственный выход которых использовался в блоке управления массивом для таких операций, как поиск максимального или минимального значения массива параллельно. Регистр в каждом PE управлял маскированием операций - маскированные операции выполнялись только на тех PE, для которых был установлен этот бит регистра.
Модуль управления массивом (ACU) передает команды и адреса памяти всем PE в модуле массива и получает биты состояния от модуля массива. Он выполнял бухгалтерские операции, такие как контроль цикла и вызов подпрограмм. Программный код приложения хранился в памяти ACU; ACU выполнил скалярные части программы, а затем поставил в очередь параллельные инструкции для массива. Он также управлял перемещением данных между PE, а также между блоком массива и промежуточной памятью.
Промежуточная память представляла собой блок памяти размером 32 МБ для буферизации данных модуля массива. Это было полезно, потому что сами PE имели всего 2 МБ памяти (1024 бит на PE) и потому, что обеспечивали более высокую скорость передачи данных, чем соединение с хост-процессором (80 мегабайт в секунду против 5 мегабайт в секунду). Промежуточная память также обеспечивает функции манипулирования данными, такие как «поворот за угол» (перестановка байтовых или словесных данных из массива) и доступ к многомерному массиву. Данные перемещались между промежуточной памятью и массивом по 128 параллельным линиям.
Хост-процессор был внешним компьютером, который загружал программы и данные в MPP и предоставлял инструменты разработки программного обеспечения и сетевой доступ к MPP. Первоначальным хост-процессором был PDP-11 , который вскоре был заменен VAX-11/780, подключенным к MPP каналом DR-780. VAX работал под управлением операционной системы VMS и был запрограммирован на MPP Pascal.
Скорость операций
Исходная скорость вычислений для основных арифметических операций на MPP была следующей:
Операция | Миллионы операций в секунду |
---|---|
Добавление массивов | |
8-битные целые числа (9-битная сумма) | 6553 |
12-битные целые числа (13-битная сумма) | 4428 |
32-битные числа с плавающей запятой | 430 |
Умножение массивов | |
8-битные целые числа (16-битное произведение) | 1861 г. |
12-битные целые числа (24-битное произведение) | 910 |
32-битные числа с плавающей запятой | 216 |
Умножение массива на скаляр | |
8-битные целые числа (16-битное произведение) | 2340 |
12-битные целые числа (24-битное произведение) | 1260 |
32-битные числа с плавающей запятой | 373 |
Смотрите также
Рекомендации
- Фишер, Джеймс Р .; Goodyear Aerospace Corporation (1987). «Приложение Б. Техническое резюме» . Границы массовых параллельных научных вычислений . Национальное управление по аэронавтике и исследованию космического пространства, Управление научно-технической информации. С. 289–294 . Проверено 11 июня 2012 года .
- Батчер, К.Е. (1 сентября 1980 г.). «Дизайн массово параллельного процессора». Транзакции IEEE на компьютерах . С-29 (9): 836–840. DOI : 10.1109 / TC.1980.1675684 .
- Батчер, Кен (1998). «Ретроспектива: архитектура массово-параллельного процессора» . Proceeding ISCA '98 25 лет Международным симпозиумам по компьютерной архитектуре . Isca '98: 15–16 . DOI : 10.1145 / 285930.285937 . ISBN 978-1581130584.
- JL Поттер, изд. (1986). Массивно-параллельный процессор . [Sl]: Mit Press. ISBN 9780262661799.
- Нил Бойд Колетти, «Обработка изображений на MPP-подобных массивах», Ph.D. докторская диссертация, факультет компьютерных наук, Иллинойсский университет в Урбана-Шампейн, 1983.
- Эфстратиос Дж. Галлопулос; Скотт Д. Макьюэн (1983). Численные эксперименты с массово-параллельным процессором . Департамент компьютерных наук, Иллинойсский университет в Урбана-Шампейн . Проверено 11 июня 2012 года .
- Gallopoulos, EJ (июль 1985 г.). «Массивно-параллельный процессор для задач гидродинамики». Компьютерная физика . 37 (1–3): 311–315. DOI : 10.1016 / 0010-4655 (85) 90167-5 .
- Э. Галлопулос, Д. Копецки, С. МакЭван, Д.Л. Слотник и А. Спрай, "Разработка и моделирование программ MPP". В «Массивно-параллельном процессоре», изд. Дж. Л. Поттера, стр. 276–290, MIT Press, 1985.
- Том Хенкель. «MPP обрабатывает спутниковые данные; суперкомпьютер заявляет о самой высокой скорости ввода-вывода в мире», Computerworld , 13 февраля 1984 г., стр. 99.
- Эрик Дж. Лернер. «Многие процессоры делают легкую работу», Aerospace America , февраль 1986 г., стр. 50.
- ^ «Массивно параллельный процессор дает высокую скорость». Авиационная неделя и космические технологии . 1984-05-28. п. 157.
- Тодд Кушнер, Анджела Ву, Азриэль Розенфельд, «Обработка изображений на MPP», Распознавание образов - PR, том. 15, нет. 3. С. 121–130, 1982.