IBM-стретч | |
---|---|
Дизайн | |
Производитель | ИБМ |
Дизайнер | Джин Амдаль |
Дата выпуска | Май 1961 г. ( Май 1961 ) |
Продано единиц | 9 |
Цена | 7 780 000 долларов США (что эквивалентно 79 320 000 долларов США в 2023 году) |
Корпус | |
Масса | 70 000 фунтов (35 коротких тонн; 32 т) [1] |
Власть | 100 кВт [1] при 110 В |
Система | |
Операционная система | МКП |
Процессор | 64-битный процессор |
Память | От 128 до 2048 килобайт (от 16 384 x 64 до 262 144 x 64 бит) [1] |
MIPS | 1.2 млн операций в секунду |
IBM 7030 , также известный как Stretch , был первым транзисторным суперкомпьютером IBM . Он был самым быстрым компьютером в мире с 1961 года до тех пор, пока первый CDC 6600 не вступил в строй в 1964 году. [2] [3]
Первоначально разработанный для удовлетворения требований, сформулированных Эдвардом Теллером в Ливерморской национальной лаборатории имени Лоуренса , первый образец был доставлен в Лос-Аламосскую национальную лабораторию в 1961 году, а вторая адаптированная версия, IBM 7950 Harvest , — в Агентство национальной безопасности в 1962 году. Stretch в Исследовательском центре атомного оружия в Олдермастоне , Англия, активно использовался исследователями там и в AERE Harwell , но только после разработки компилятора S2 Fortran , который был первым, добавившим динамические массивы , и который позже был перенесен в Ferranti Atlas из компьютерной лаборатории Atlas в Чилтоне. [4] [5]
7030 оказался намного медленнее, чем ожидалось, и не смог достичь своих агрессивных целей по производительности. IBM была вынуждена снизить цену с 13,5 млн долларов до всего лишь 7,78 млн долларов и снять 7030 с продаж клиентам, не имеющим уже заключенных контрактов. Журнал PC World назвал Stretch одним из крупнейших провалов управления проектами в истории ИТ . [6]
В IBM было трудно принять то, что его затмила более мелкая Control Data Corporation . [7] Руководитель проекта Стивен У. Данвелл [8] изначально был сделан козлом отпущения за свою роль в «провале» [9] , но когда успех IBM System/360 стал очевиден, ему принесли официальные извинения, и в 1966 году он был назначен членом IBM [10] .
Несмотря на то, что Stretch не смог достичь своих собственных показателей производительности, он послужил основой для многих конструктивных особенностей успешной системы IBM System/360, которая была анонсирована в 1964 году и впервые поступила в продажу в 1965 году.
В начале 1955 года доктор Эдвард Теллер из Радиационной лаборатории Калифорнийского университета хотел получить новую научную вычислительную систему для трехмерных гидродинамических расчетов. Предложения были запрошены у IBM и UNIVAC для этой новой системы, которая должна была называться Livermore Automatic Reaction Calculator или LARC . По словам руководителя IBM Катберта Херда , такая система будет стоить примерно 2,5 миллиона долларов и будет работать со скоростью от одного до двух MIPS . [11] : 12 Поставка должна была состояться через два-три года после подписания контракта.
В IBM небольшая группа в Покипси, включая Джона Гриффита и Джина Амдаля, работала над проектным предложением. Сразу после того, как они закончили и собирались представить предложение, Ральф Палмер остановил их и сказал: «Это ошибка». [11] : 12 Предложенный проект должен был быть построен либо с использованием точечных транзисторов , либо с использованием транзисторов с поверхностным барьером , и оба, вероятно, вскоре будут превзойдены недавно изобретенным диффузионным транзистором . [11] : 12
IBM вернулась в Ливермор и заявила, что они выходят из контракта, и вместо этого предложили значительно лучшую систему: «Мы не собираемся строить эту машину для вас; мы хотим построить что-то лучшее! Мы не знаем точно, что это займет, но мы думаем, что это будет еще миллион долларов и еще один год, и мы не знаем, как быстро она будет работать, но мы хотели бы нацелиться на десять миллионов инструкций в секунду». [11] : 13 Ливермор не был впечатлен, и в мае 1955 года они объявили, что UNIVAC выиграл контракт LARC , теперь называемый Livermore Automatic Research Computer . LARC в конечном итоге должен был быть поставлен в июне 1960 года. [12]
В сентябре 1955 года, опасаясь, что Национальная лаборатория Лос-Аламоса также может заказать LARC, IBM представила предварительное предложение по высокопроизводительному двоичному компьютеру на основе улучшенной версии конструкции, которую Ливермор отверг, и которую они восприняли с интересом. В январе 1956 года был официально начат проект Stretch. В ноябре 1956 года IBM выиграла контракт с агрессивной целью по производительности: «скорость не менее 100 раз выше, чем у IBM 704 » (т. е. 4 MIPS). Поставка была запланирована на 1960 год.
В ходе проектирования оказалось необходимым снизить тактовую частоту, что дало понять, что Stretch не сможет достичь своих агрессивных целей по производительности, но оценки производительности варьировались от 60 до 100 раз по сравнению с IBM 704. В 1960 году была установлена цена в 13,5 миллионов долларов за IBM 7030. В 1961 году фактические тесты показали, что производительность IBM 7030 была всего лишь примерно в 30 раз выше, чем у IBM 704 (т. е. 1,2 MIPS), что вызвало значительное смущение для IBM. В мае 1961 года Томас Дж. Уотсон-младший объявил о снижении цены на все 7030, по которым велись переговоры, до 7,78 миллионов долларов и немедленном снятии продукта с дальнейших продаж.
Время сложения чисел с плавающей точкой составляет 1,38–1,50 микросекунды , время умножения — 2,48–2,70 микросекунды, а время деления — 9,00–9,90 микросекунды.
Хотя IBM 7030 не считался успешным, он породил множество технологий, внедренных в будущие машины, которые были весьма успешными. Транзисторная логика Standard Modular System была основой для линейки научных компьютеров IBM 7090 , бизнес-компьютеров IBM 7070 и 7080 , линеек IBM 7040 и IBM 1400 и малого научного компьютера IBM 1620 ; 7030 использовал около 170 000 транзисторов. Устройства IBM 7302 Model I Core Storage также использовались в IBM 7090, IBM 7070 и IBM 7080. Мультипрограммирование , защита памяти, обобщенные прерывания, восьмибитный байт для ввода-вывода [a] — все это концепции, позже внедренные в линейку компьютеров IBM System/360, а также в большинство более поздних центральных процессоров (ЦП).
Стивен Данвелл, руководитель проекта, ставший козлом отпущения, когда Stretch потерпел коммерческий провал, вскоре после феноменально успешного запуска System/360 в 1964 году указал, что большинство ее основных концепций были впервые предложены Stretch. [13] К 1966 году он получил извинения и стал членом IBM Fellow — высокая честь, которая несла с собой ресурсы и полномочия для продолжения желаемых исследований. [13]
Конвейеризация инструкций , предварительная выборка и декодирование, а также чередование памяти использовались в более поздних конструкциях суперкомпьютеров, таких как IBM System/360 Models 91 , 95 и 195 , и IBM 3090 series, а также в компьютерах других производителей. По состоянию на 2021 год [обновлять]эти методы все еще используются в большинстве современных микропроцессоров, начиная с поколения 1990-х годов, включавшего Intel Pentium и Motorola/IBM PowerPC , а также во многих встроенных микропроцессорах и микроконтроллерах различных производителей.
Процессор 7030 использует эмиттерно-связанную логику (первоначально называемую логикой управления током ) [14] на 18 типах карт стандартной модульной системы (SMS). Он использует 4025 двойных карт (как показано) и 18 747 одиночных карт, содержащих 169 100 транзисторов, требующих в общей сложности 21 кВт мощности. [15] : 54 Он использует высокоскоростные германиевые дрейфовые транзисторы NPN и PNP с частотой среза более 100 МГц и потребляющие ~50 мВт каждый. [15] : 57 Некоторые схемы третьего уровня используют 3-й уровень напряжения. Каждый логический уровень имеет задержку около 20 нс. Для увеличения скорости в критических областях используется логика эмиттерного повторителя, чтобы уменьшить задержку до около 10 нс. [15] : 55
Он использует ту же основную память, что и IBM 7090. [15] : 58
Компьютер IBM 7030 (за исключением оперативной памяти ) из Ливерморской лаборатории имени Лоуренса и части компьютера IBM 7030 из корпорации MITRE/Университета имени Бригама Янга в настоящее время находятся в коллекции Музея истории компьютеров в Маунтин-Вью, Калифорния .
Инструкции могут быть 32-битными или 64-битными. [18]
Регистры перекрывают первые 32 адреса памяти, как показано на рисунке. [19]
! Адрес | Мнемонический | Зарегистрироваться | Сохранено в: |
---|---|---|---|
0 | $Z | 64-битный ноль: всегда читается как ноль, не может быть изменен путем записи | Основное хранилище |
1 | $ИТ | интервальный таймер (биты 0..18): декрементируется с частотой 1024 Гц, повторяется примерно каждые 8,5 минут, при нуле включает «индикатор сигнала времени» в регистре индикатора | Индексное хранилище ядра |
$TC | 36-битные часы (биты 28..63): количество тактов 1024 Гц, биты 38..63 увеличиваются один раз в секунду, циклы повторяются каждые ~777 дней. | ||
2 | $IA | 18-битный адрес прерывания | Основное хранилище |
3 | $УБ | 18-битный верхний граничный адрес (биты 0-17) | Транзисторный регистр |
$LB | 18-битный нижний граничный адрес (биты 32-49) | ||
1-битный контроль границ (бит 57): определяет, защищены ли адреса внутри или вне граничных адресов | |||
4 | 64-битные биты обслуживания: используются только для обслуживания | Основное хранилище | |
5 | $CA | адрес канала (биты 12..18): только для чтения, устанавливается «обменом», процессором ввода-вывода | Транзисторный регистр |
6 | $ЦПUS | другие биты ЦП (биты 0..18): механизм сигнализации для кластера из до 20 ЦП | Транзисторный регистр |
7 | $LZC | количество оставшихся нулей (биты 17..23): количество начальных нулевых битов из результата соединения или операции с плавающей точкой | Транзисторный регистр |
$АОС | количество всех единиц (биты 44..50): количество битов, установленных в результате соединения или десятичном умножении или делении | ||
8 | $L | Левая половина 128-битного аккумулятора | Транзисторный регистр |
9 | $Р | Правая половина 128-битного аккумулятора | |
10 | $СБ | Байт знака аккумулятора (биты 0..7) | |
11 | $ИНД | регистр индикатора (биты 0..19) | Транзисторный регистр |
12 | $МАСКА | 64-битный регистр маски: биты 0..19 всегда 1, биты 20..47 доступны для записи, биты 48..63 всегда 0 | Транзисторный регистр |
13 | $RM | 64-битный регистр остатка: устанавливается только инструкциями деления целых чисел и чисел с плавающей точкой | Основное хранилище |
14 | $FT | 64-битный регистр фактора: изменяется только инструкцией «загрузить фактор» | Основное хранилище |
15 | $ТР | 64-битный транзитный регистр | Основное хранилище |
16 ... 31 | $X0 ... $X15 | 64-битные индексные регистры (шестнадцать) | Индексное хранилище ядра |
Регистры аккумулятора и индекса работают в формате знака и величины .
Основная память содержит от 16 до 256 К 64-битных двоичных слов, разбитых на банки по 16 К.
Для стабилизации рабочих характеристик память нагревалась/охлаждалась с помощью иммерсионного масла.