Connection Machine ( CM ) — член серии суперкомпьютеров с массовым параллелизмом , которые выросли из докторских исследований альтернатив традиционной архитектуре компьютеров фон Неймана, проведенных Дэнни Хиллисом в Массачусетском технологическом институте (MIT) в начале 1980-х годов. Начиная с CM-1, машины изначально предназначались для приложений в области искусственного интеллекта (ИИ) и обработки символов, но более поздние версии нашли больший успех в области вычислительной науки .
Дэнни Хиллис и Шерил Хэндлер основали Thinking Machines Corporation (TMC) в Уолтеме, штат Массачусетс , в 1983 году, а в 1984 году переехали в Кембридж, штат Массачусетс. В TMC Хиллис собрал команду для разработки того, что впоследствии стало Соединительной машиной CM-1, проектом для массово-параллельной компоновки тысяч микропроцессоров на основе гиперкуба , возникшей в результате его работы над докторской диссертацией в Массачусетском технологическом институте по электротехнике и информатике (1985). ). [1] Диссертация получила премию ACM «Выдающаяся диссертация» в 1985 году, [2] и была представлена в виде монографии, в которой были рассмотрены философия, архитектура и программное обеспечение первой соединительной машины, включая информацию о маршрутизации ее данных между центральным процессором (ЦП). ) узлы, обработка памяти и язык программирования Lisp, применяемый в параллельной машине. [1] [3] Самые ранние концепции предполагали чуть более миллиона процессоров, каждый из которых был соединен в 20-мерный гиперкуб, [4] который позже был уменьшен.
Каждый микропроцессор CM-1 имеет свои собственные 4 килобита оперативной памяти (ОЗУ), а их массив на основе гиперкуба был разработан для выполнения одной и той же операции над несколькими точками данных одновременно, т. е. для выполнения задач в одной инструкции, нескольких мода данных ( SIMD ). CM-1, в зависимости от конфигурации, имеет до 65 536 отдельных процессоров, каждый из которых чрезвычайно прост и обрабатывает по одному биту за раз. CM-1 и его преемник CM-2 имеют форму куба со стороной 1,5 метра, разделенного поровну на восемь меньших кубов. Каждый субкуб содержит 16 печатных плат и главный процессор, называемый секвенсором. Каждая плата содержит 32 микросхемы. Каждый чип содержит маршрутизатор , 16 процессоров и 16 ОЗУ. CM-1 в целом имеет 12-мерную сеть маршрутизации на основе гиперкуба (соединяющую 2 12 микросхем), основное ОЗУ и процессор ввода-вывода (контроллер каналов) . Каждый маршрутизатор содержит пять буферов для хранения передаваемых данных, когда свободный канал недоступен. Первоначально инженеры рассчитали, что потребуется семь буферов на чип, но это сделало чип слишком большим для сборки. Лауреат Нобелевской премии по физике Ричард Фейнман ранее рассчитал, что пяти буферов будет достаточно, используя дифференциальное уравнение, включающее среднее количество 1 бит в адресе. Они повторно представили проект чипа только с пятью буферами, и когда они собрали машину, она работала нормально. Каждый чип подключен к коммутационному устройству, называемому нексусом. CM-1 использует алгоритм Фейнмана для вычисления логарифмов, который он разработал в Лос-Аламосской национальной лаборатории для Манхэттенского проекта . Он хорошо подходит для CM-1, поскольку использует только сдвиг и сложение с небольшой таблицей, общей для всех процессоров. Фейнман также обнаружил, что CM-1 будет вычислять диаграммы Фейнмана для расчетов квантовой хромодинамики (КХД) быстрее, чем дорогая специальная машина, разработанная в Калифорнийском технологическом институте. [5] [6]
Чтобы повысить свою коммерческую жизнеспособность, TMC выпустила CM-2 в 1987 году, добавив в систему числовые сопроцессоры с плавающей запятой Weitek 3132 и дополнительную оперативную память. Тридцать два первоначальных однобитных процессора использовали каждый числовой процессор. CM-2 может быть оснащен оперативной памятью объемом до 512 МБ и системой жестких дисков с резервным массивом независимых дисков ( RAID ) , называемым DataVault , объемом до 25 ГБ. Также были произведены два более поздних варианта CM-2: меньший CM-2a с 4096 или 8192 однобитными процессорами и более быстрый CM-200 .
Поскольку программное обеспечение для однобитного процессора CM-1/2/200 возникло в области исследований искусственного интеллекта, оно было создано под влиянием языка программирования Lisp , и версия Common Lisp , *Lisp (разговорный: Star-Lisp ), была реализована на СМ-1. Другие ранние языки включали ИК Карла Симса и УРДУ Клиффа Лассера. Большая часть системного программного обеспечения для CM-1/2 была написана на *Lisp. Однако многие приложения для CM-2 были написаны на C* , расширенном наборе ANSI C для параллельных данных .
С CM-5 , анонсированным в 1991 году, TMC перешла от гиперкубической архитектуры простых процессоров CM-2 к новой и отличной архитектуре с несколькими командами и несколькими данными ( MIMD ), основанной на сети «толстого дерева» вычислений с сокращенным набором команд (RISC). Процессоры SPARC . Чтобы упростить программирование, была создана имитация SIMD- проекта. Более поздний CM-5E заменяет процессоры SPARC более быстрыми SuperSPARC. CM-5 был самым быстрым компьютером в мире в 1993 году согласно списку TOP500 , имея 1024 ядра с Rpeak 131,0 G FLOPS , и в течение нескольких лет многие из 10 самых быстрых компьютеров были CM-5. [7]
Connection Machines отличались ярким визуальным дизайном. Команды дизайнеров CM-1 и CM-2 возглавил Тамико Тиль . [8] [9] [ нужен лучший источник ] Физическая форма шасси CM-1, CM-2 и CM-200 представляла собой куб из кубов, что отсылало к внутренней 12-мерной сети гиперкубов машины , с красным светодиоды (LED), по умолчанию указывающие состояние процессора, видимые через дверцы каждого куба.
По умолчанию, когда процессор выполняет инструкцию, его светодиод горит. В программе SIMD цель состоит в том, чтобы как можно больше процессоров работали над программой одновременно, о чем свидетельствует постоянное горение всех светодиодов. Те, кто не знаком с использованием светодиодов, хотели увидеть, как они мигают или даже пишут сообщения посетителям. В результате в готовых программах часто имеются лишние операции по миганию светодиодов.
СМ-5 в плане имел лестничную форму, а также имел большие панели мигающих красных светодиодов. В дизайне CM-5 участвовал выдающийся скульптор-архитектор Майя Лин . [10]
Самый первый CM-1 находится в постоянной экспозиции в Музее истории компьютеров в Маунтин-Вью, Калифорния, где также есть еще два CM-1 и CM-5. [11] Другие соединительные машины сохранились в коллекциях Музея современного искусства Нью-Йорка [12] и Живых компьютеров: Музей + Лаборатории Сиэтла (CM-2 со светодиодными решетками, имитирующими светодиоды состояния процессора), а также в Национальном Смитсоновском институте. Музей американской истории , Компьютерный музей Америки в Розуэлле, Джорджия, [13] и Шведский национальный музей науки и техники (Tekniska Museet) в Стокгольме, Швеция. [14]
CM-5 был показан в фильме «Парк Юрского периода» в диспетчерской острова (вместо суперкомпьютера Cray X-MP, как в романе). В диспетчерской можно было увидеть два банка, один блок из 4 единиц и один справа от установки. [15]
Компьютерные мэйнфреймы в Fallout 3 во многом были вдохновлены CM-5. [16]
Cyberpunk 2077 включает в себя множество юнитов в стиле CM-1/CM-2 в различных частях игры.