В вечернем дайджесте Хабра проскочила заметка про IBM Harvest — сверхсекретный криптоаналитический компьютер Агентства национальной безопасности США, о котором мир не знал о его существовании с 1962 года. Сам по себе сюжет красивый: машина, работавшая до 200 раз быстрее всего на планете, построенная в единственном экземпляре и молча проработавшая четырнадцать лет — от Карибского кризиса до Хельсинкских соглашений. Но зацепило не это.
Зацепило то, на чьей базе Harvest был построен. Его фронтендом стал IBM 7030 Stretch — первый суперкомпьютер IBM, который на гражданском рынке провалился так громко, что компания была вынуждена публично срезать цену почти вдвое, снять машину с продажи, а руководителя проекта сделать козлом отпущения. Журнал PC World позже включит Stretch в список крупнейших провалов проектного менеджмента в истории ИТ. И вот этот «провал» в секретной конфигурации четырнадцать лет был сердцем самой важной разведывательной машины Америки. Так где же правда — в пшике или в триумфе?
История начинается не с шпионов, а с физиков. В 1955 году Эдвард Теллер — тот самый «отец водородной бомбы» — хотел компьютер для трёхмерной гидродинамики ядерных зарядов, и IBM проиграла тот тендер фирме UNIVAC. Но обида только раззадорила: в январе 1956-го компания стартовала Project Stretch с обещанием, от которого захватывало дух: ускорение в 100 раз относительно флагманского IBM 704. Не на 20%, не вдвое — в сто раз. Никто в индустрии так не рисковал.
Отсюда и нечеловеческая команда проекта: Джин Амдал, будущий создатель System/360 и собственной компьютерной империи; Фред Брукс, будущий автор «Мифического человеко-месяца»; Джон Кок, будущий лауреат премии Тьюринга; Фрэнсис Аллен, первая женщина — лауреат Тьюринговской премии. Уже одно это делает Stretch самым «титулованным» провалом в истории вычислительной техники.
Реальность, как обычно, внесла правки: в 1961 году бенчмарки показали ускорение лишь в 30 раз вместо обещанных ста. Томас Уотсон-младший, глава IBM, лично объявил о снижении цены с 13,5 до 7,78 миллиона долларов и о снятии машины с продаж. IBM теряла деньги на каждом проданном экземпляре. Всего построили девять Stretch — а десятым, самым странным, стал тот, который не продавался вообще: Harvest.
Вот деталь, которая переворачивает привычную драматургию: первым предложенным клиентом Stretch было именно АНБ. Ещё в 1955 году, до всякого Лос-Аламоса, агентству предлагали машину с фиксированной ценой в 3,5 миллиона долларов — и оно отказалось. Инженеры АНБ честно написали: память таких скоростей ещё не доказана, мы не готовы ставить на это ставку. IBM развернулась и продала ту же самую концепцию Лос-Аламосу, который подписался охотно.
Но это не конец истории с АНБ, а её начало — наоборот. Агентство не купило компьютер, но купило влияние: два 18-месячных исследовательских контракта с IBM — SILO на 821 203 доллара за разработку быстрой памяти и PLANTATION (позже переименован в RANCHO) на 828 340 долларов за проектирование агентской машины. Отдельным контрактом — TRACTOR на 337 443 доллара — профинансировали ленточную систему, на которую у самой IBM не хватало исследовательского бюджета. Это уже не «покупка», это соавторство: АНБ фактически доплачивало за то, чтобы гражданский Stretch вырос в нечто, нужное разведке.
Рассекреченная история компьютеров АНБ (доклад Самуэля Снайдера 1964 года) сохранила и цифры внутренней экспертизы: комиссия из четырнадцати программистов в июле 1957-го оценила проект Harvest — он решал типовые агентские задачи быстрее существующего парка оборудования в 50–200 раз в зависимости от задачи. Контракт был ратифицирован 30 апреля 1958 года, машина встала в Форт-Миде в феврале 1962-го — с опозданием на 15 месяцев и перерасходом на 32%. Даже самый секретный компьютер мира не избежал классики проектного менеджмента.
Что же такое Harvest технически? Формально — IBM 7950, приставка к Stretch. Физически — дополнение было вдвое больше самого компьютера. Главная идея: Stretch хорош в числах с плавающей точкой, а разведке нужно другое — читать потоки текста. Поэтому Harvest получил то, что сегодня назвали бы streaming-процессором: он не исполнял программы в привычном смысле, а конфигурировался несколькими сотнями бит настроек и затем молотил через память два потока данных — P и Q, — выдавая на выходе третий, R. Со скоростью байт каждые 0,3 микросекунды, три миллиона символов в секунду. Память была бит-адресуемой: можно было попросить ровно 5 бит, не выравнивая ничего.
Одна «инструкция» Harvest могла работать часами без вмешательства человека. Фрэнсис Аллен вспоминала в устной истории 2001 года: «Одна инструкция могла делать сортировку и статистический анализ данных, которые проносятся мимо неё. Всё, что мы делали тогда, было на переднем крае — без всяких вопросов». Внутри работали конвейерные блоки сравнения и табличных подстановок — последний, по иронии, функционально повторял роторную шифровальную машину, только электронно и с произвольной памятью вместо проводки.
Для программистов придумали отдельный язык — Alpha, расшифровывавшийся как Advanced Language for Programming Harvest. В нём было два символа, у которых не было аналогов вплоть до появления wildcards в Unix: «scab» (знак вопроса) — символ, который точно есть, но неизвестен; «pad» (пробел) — пустышка. Строки собирались в «cords», cords — в «ropes». Это был, по сути, DSL для криптоанализа за десятилетие до того, как индустрия придумала термин DSL. Аллен написала финальный технический отчёт по своей части — и потеряла к нему доступ в тот же день: «Я потратила на него почти всё лето, и он просто исчез где-то в Форт-Миде».
Данные требовались Harvest в промышленных объёмах, и жёсткие диски 1962 года были для этого смехотворны. Решением стала система IBM 7955 Tractor — первая в мире автоматизированная ленточная библиотека. Лента шириной 44 миллиметра лежала в сдвоенных катушках-кассетах весом 6–7 килограммов — «как кегля» с ручкой, по описанию IEEE Spectrum. Каждая кассета хранила около 120 мегабайт на плёнке длиной 550 метров, а три библиотеки системы давали около 44 гигабайт онлайн-данных — более чем в 190 раз больше, чем весь дисковый массив IBM 2314 образца 1965 года с его 233 мегабайтами. В 1962 году. Для масштаба: типовой компьютерный центр той эпохи означал стеллажи с бобинами, которые оператор вручную заряжал в приводы по одной за смену.
Роботизированная рука на сервоприводе сама доставала кассету из шкафа, ставила её в привод, лента бежала мимо головок со скоростью 6 метров в секунду — быстрее, чем глаз успевает уследить. Смена кассеты занимала 18 секунд. Tractor работал круглосуточно, и его пропускная способность была подогнана под аппетит Harvest так, чтобы потоки с двух лент читались, а третий писался, без единой паузы на перекладывание плёнки.
Показательный пример масштаба из книги Джеймса Бэмфорда «Body of Secrets»: Harvest однажды просканировал 7 миллионов расшифрованных сообщений на предмет 7 000 ключевых слов — менее чем за четыре часа. Другая задача под кодовым именем «Moretown»: 11 миллионов перехваченных сообщений за 16 лет против списка из 8 000 терминов — около десяти часов. При этом во время экскурсий по машзалу сотрудники АНБ, по воспоминаниям Бэмфорда, показывали на машину со скептической усмешкой: «Красиво, но не работает».
К Harvest была подключена и система Rye — удалённый доступ к машине с рабочих мест аналитиков. Доклад АНБ 1965 года отмечал, что Rye «позволил агентству найти значительно больше криптосистем, потенциально поддающихся взлому», а сообщения, которые вручную расшифровывались часами или не поддавались вовсе, теперь «устанавливались» и дешифровались за минуты. Обзор 1972 года назовёт Rye одним из двух первых в истории примеров многоуровневой компьютерной безопасности — то есть Harvest был не только калькулятором шифров, но и ранним полигоном идей о разграничении доступа, из которых полвека спустя выросло всё, что мы сегодня зовём компьютерной безопасностью.
А теперь вернёмся к Stretch-провалу — потому что его финал даже интереснее начала. Да, IBM потеряла деньги и лицо. Да, руководитель Стивен Данвелл был отправлен во внутреннее изгнание — «за то, что не предупредил менеджмент». Знаменитая записка Уотсона-младшего от 28 августа 1963 года («почему мы уступили лидерство в отрасли команде из 34 человек, включая уборщика?») была написана именно под впечатлением от CDC 6600 Сеймура Крэя, обошедшего Stretch.
Но посмотрите, что было внутри этого «провала». Восемьбитный байт — стандарт, на котором сегодня работает каждый ваш файл, — впервые появился именно в Stretch. Конвейерное исполнение инструкций, предвыборка, спекулятивное выполнение переходов (в конце 1950-х!), защита памяти для многозадачности, обобщённые прерывания, стандартизованный ввод-вывод — всё это родилось в Stretch и затем легло в System/360, самый успешный мейнфрейм в истории. Данвелла через несколько лет официально извинили и в 1966-м сделали IBM Fellow. Продукты на архитектуре 360 спустя тридцать лет приносили больше половины всей выручки IBM.
А ветка наследования уходит ещё дальше. На обломках сверхамбициозного проекта ACS (тоже выросшего из Stretch-культуры) Джон Кок довёл идею «компилятор и машина проектируются вместе» до концепта IBM 801 — и это прямой предок всей RISC-философии, то есть буквально архитектурного фундамента смартфона, на котором вы, возможно, читаете эти строки. Фрэнсис Аллен вынесла из Stretch/Harvest методы оптимизации компиляторов, за которые получила Тьюринговскую премию в 2006-м. Сам Harvest-стриминговый движок с конвейерными блоками сравнения — прямой предшественник GPU-копроцессоров и аппаратных инспекций сетевых пакетов на wire speed.
Уходит машина не героически. К 1971 году Harvest загружен на рекордные 115 часов в неделю, обычная обработка ушла на новые машины, остались только гигантские задачи, которые никто другой потянуть не мог. Аналитик АНБ Роберт Луней в 1972-м резюмировал: машина «задумана в пятидесятых, рождена в шестидесятых и незаменима в семидесятых». Он ошибся ровно в одном слове.
27 февраля 1976 года Harvest выключили окончательно: кастомная механическая деталь в ленточной библиотеке Tractor износилась, а её производитель обанкротился. IBM не стала воспроизводить архитектуру на новой элементной базе — содержать уникальную машину ради одного клиента стало бессмысленнее, чем купить серийный Cray-1, что АНБ и сделало. В архиве агентства хранится прощальная «телеграмма» от имени самой машины, сочинённая кем-то из сотрудников в день списания: «Хотя я не был широко известен, я, вероятно, был крупнейшей, самой быстрой и самой технически продвинутой компьютерной системой в мире... Прошло четырнадцать лет, время выйти на пенсию».
Ирония финала: Cray-1, сменивший Harvest, собрал Сеймур Крэй — тот самый, чья CDC 6600 за двенадцать лет до этого отбила у Stretch корону самой быстрой машины мира и похоронила её гражданскую карьеру. История замкнулась: одиночная секретная машина уступила место серийной гражданской, потому что именно серийность, а не уникальность, в итоге выиграла. Но идеи — конвейеры, потоковая обработка, автоматизированные ленточные библиотеки, DSL для специфических задач — перебрались в новые тела и живут там до сих пор.
Меня в этой истории больше всего цепляет не шпионский антураж, а жестокая асимметрия между репутацией и наследием. По репутации Stretch — провал: цена срезана вдвое, продажи отменены, руководитель наказан, PC World вписал его в чёрный список. По наследию — это, возможно, самая урожайная машина в истории IBM: из неё вышли байт, конвейер, System/360, RISC и две с лишним Тьюринговские премии по прямым веткам родства.
Второй вывод — про цену секретности. Harvest не имел потомков не потому, что идеи были плохи, а потому, что они были засекречены: ни публикаций, ни династии, ни строчки в учебниках четырнадцать лет. Обратная сторона: Фрэнсис Аллен, рискуя карьерой молодого инженера, пошла работать на проект, о заказчике которого знала лишь бюджетный псевдоним «Bureau of Ships» — «Управление кораблей». Значительная часть великих достижений холодной войны построена людьми, которые искренне считали, что пишут софт для кораблей.
И третье, самое свежее. IEEE Spectrum опубликовал свой большой разбор Harvest лишь в августе 2026 года — рассекречивание шло волнами с 2010-го, и полная картина сложилась только сейчас, спустя полвека после списания машины. Так что когда в следующий раз вы прочтёте про «самый быстрый компьютер в мире» — стоит спросить, не работает ли где-то в Форт-Миде ещё один кандидат, о котором напишут только через пятьдесят лет.