Введение

CDC 8600 был последней разработкой суперкомпьютера Сеймура Крэя во время его работы в корпорации Control Data. Являясь естественным преемником CDC 6600 и CDC 7600, 8600 должен был быть примерно в 10 раз быстрее 7600, который уже был самым быстрым компьютером на рынке. Конструкция представляла собой, по сути, четыре компьютера 7600, упакованные в очень компактный корпус для работы на более высоких тактовых частотах. Разработка началась в 1968 году, вскоре после выпуска 7600, но проект вскоре столкнулся с трудностями. Плотная компоновка системы привела к серьезным проблемам с надежностью и сложностям в охлаждении отдельных компонентов. К 1971 году у CDC возникли проблемы с денежным потоком, а конструкция все еще не была завершена, что побудило Крэя покинуть компанию в 1972 году. Проект 8600 был окончательно отменен в 1974 году, и Control Data перешла к разработке серии CDC STAR 100. Крей вернулся к базовой конструкции 8600 в своем Cray 2 в начале 1980-х годов. Использование интегральных схем решило проблемы с плотной компоновкой, а жидкостное охлаждение – проблемы с теплоотводом. Cray 2 очень похож на 8600 как в физическом, так и в концептуальном плане.

Дизайн

В 1960-х годах разработка компьютеров основывалась на монтаже электронных компонентов (транзисторов, резисторов и т. д.) на печатных платах. Несколько плат формировали дискретный логический элемент машины, известный как модуль. Общая скорость работы машины тесно связана с длиной проводников – трассой сигнала, – что требовало от высокоскоростных компьютеров максимально уменьшать размеры модулей. Это противоречило необходимости повышения функциональности за счет увеличения сложности самих модулей. К концу 1960-х годов отдельные компоненты перестали значительно уменьшаться в размерах, поэтому для повышения сложности машин модули должны были увеличиваться. Теоретически, это могло замедлить работу машины из-за задержек в передаче сигналов. Cray стремился решить эти противоречивые задачи, одновременно увеличивая размер каждого модуля и оснащая его большим количеством компонентов, и уменьшая размеры компьютера в целом за счет более плотной компоновки модулей внутри машины. Между разработкой 7600 и началом работы над 8600 не произошло улучшений в самих компонентах, поэтому любое повышение производительности должно было достигаться исключительно за счет компоновки. Для новой конструкции использовались модули, содержащие восемь четырехслойных печатных плат размером примерно 20x15 см, образующие стопку размером с большой учебник и потребляющие около 3 киловатт энергии. Затем модули упаковывались в сравнительно небольшой шасси центрального процессора – 16-гранный цилиндр диаметром и высотой около метра, установленный на кольце блоков питания. Предлагаемая конструкция сильно напоминала более позднюю Cray 2, но была еще короче и меньше в диаметре. Учитывая, что вся эта мощность рассеивалась в таком небольшом пространстве, охлаждение было серьезной конструкторской проблемой. Инженер Cray по системам охлаждения, Дин Роуш, ранее работавший в Amana, разместил медный лист внутри каждой печатной платы, отводя тепло к медной пластине на одном конце, где оно охлаждалось фреоновой системой. Это еще больше увеличило вес и сложность модулей, до такой степени, что каждый из них весил около… Электронные компоненты также были улучшены по сравнению с предыдущими конструкциями. Основные схемы процессора перешли на логику на основе ЭКЛ, что позволило увеличить тактовую частоту до 125 МГц (цикл 8 нс) с 36,4 МГц (цикл 27,5 нс) у 7600, то есть примерно в четыре раза. Основная память также была реализована на основе ЭКЛ, и машина была оснащена огромным для того времени объемом – 256 К слов (2 Мбайт) стандартной памяти. Память была распределена по 64 банкам для быстрого доступа, примерно 8 нс/слово, хотя время цикла любого банка составляло около 250 нс. Быстрая ферритовая память с доступом 20 нс (в целом) также была разработана в качестве резервной копии полупроводниковой памяти. Cray решил, что 8600 будет включать четыре полноценных процессора, совместно использующих основную память. Для повышения общей пропускной способности машина могла работать в специальном режиме, отправляя одну инструкцию всем четырем процессорам с разными данными. Эта техника, известная сегодня как SIMD, уменьшала общее количество обращений к памяти, поскольку инструкция считывалась только один раз вместо четырех. Каждый процессор был примерно в 2,5 раза быстрее 7600, поэтому при работе всех четырех процессоров машина в целом была бы примерно в 10 раз быстрее, достигая скорости около 100 МFLOPS. Правительство четко дало понять, что все будущие закупки компьютеров потребуют поддержки обработки ASCII. Для удовлетворения этого требования 8600 использовал 64-битное слово (восемь 8-битных символов) вместо более раннего 60-битного слова (десять 6-битных символов), использовавшегося в 6600 и 7600. Как и в предыдущих конструкциях, инструкции "упаковывались" в слова, при этом каждая инструкция занимала 16 или 32 бита (вместо 15/30). 8600 больше не использовал регистры A или B, как в предыдущих конструкциях, и вместо этого включал набор из 16 регистров X общего назначения. Система периферийного процессора 6600/7600 использовалась для ввода/вывода, практически без изменений. Были предприняты некоторые усилия для обеспечения совместимости между старыми машинами и 8600, но изменение разрядности слова затруднило это. Вместо этого были сохранены форматы чисел с плавающей точкой, что позволило напрямую переносить код Fortran.

Проблемы компании

В 1971 году компания Control Data столкнулась с необходимостью "затянуть пояса" из-за расходов на продолжающийся судебный процесс против IBM и попросила все подразделения сократить фонд оплаты труда на 10%. Крей умолял Control Data освободить его подразделение, чтобы он мог завершить выпуск 8600. Когда Control Data отклонила эту просьбу, он снизил себе зарплату до минимальной, чтобы решить проблему. К 1972 году стало очевидно, что даже легендарные навыки Крэя в разработке модулей подводили его в случае с 8600. Надежность была настолько низкой, что казалось невозможным заставить машину работать в целом. Это случалось не впервые: над проектом 6600 Крэю пришлось начинать с нуля, а 7600 какое-то время находился в производстве, прежде чем начал работать надежно. В этот раз Крей решил, что текущая конструкция зашла в тупик, и сообщил Уильяму Норрису (генеральному директору CDC), что единственный выход – перепроектировать машину с нуля. Финансовое положение компании было шатким, и Норрис решил, что не может пойти на риск; Крэю придется продолжать работу над текущей конструкцией. В 1972 году Крей решил, что не может работать в таких условиях, и покинул CDC, чтобы основать Cray Research (уход был мирным; Норрис и другие сотрудники CDC приобрели часть первоначального выпуска акций Cray Computer, что оказалось для них выгодной инвестицией). Для своей новой работы он отказался от концепции многопроцессорности, опасаясь, что программное обеспечение того времени не сможет в полной мере использовать возможности процессоров. Возможно, он пришел к такому выводу после того, как ILLIAC IV наконец был введен в эксплуатацию примерно в то же время и продемонстрировал разочаровывающую производительность. Члены команды убедили Норриса, что 8600 можно завершить даже без Крэя, и работа продолжилась в лаборатории Чиппева. К 1974 году машина все еще работала некорректно. Конкурирующая разработка STAR Джима Торнтона к этому моменту достигла производственного качества, и проект 8600 был отменен. В реальной эксплуатации STAR показал низкую производительность, а когда Cray 1 вышел на рынок в 1976 году, CDC быстро покинула рынок суперкомпьютеров. В 1980-х годах была предпринята попытка вернуться на рынок с ETA 10, но она закончилась неудачей.