Введение

ES 1 была неудачной попыткой компании Evans & Sutherland выйти на рынок суперкомпьютеров. Она предназначалась для технических и научных пользователей, которые обычно приобретали бы машину вроде Cray 1, но не требовали такой же вычислительной мощности и пропускной способности для задач с интенсивной графикой. Машина должна была выйти на рынок как раз в тот момент, когда он начал сокращаться после окончания холодной войны и сокращения военных заказов, поэтому было построено лишь несколько экземпляров, и проданы были только два.

Предыстория

Жан Ив Леклерк был разработчиком компьютерных систем, которому не удалось найти финансирование в Европе для проекта высокопроизводительного сервера. В 1985 году он обратился за советом к Дейву Эвансу, своему бывшему научному руководителю. После обсуждения он убедил его в том, что поскольку большинство их клиентов использовали графическое оборудование E&S на машинах Cray Research и других суперкомпьютерах, E&S было бы целесообразно предложить собственную недорогую платформу. В итоге, в 1986 году было создано новое подразделение Evans & Sutherland Computer Division, или ESCD, для работы над этим проектом. В отличие от основной деятельности E&S, штаб-квартира которой находится в Солт-Лейк-Сити, штат Юта, считалось, что разработка компьютерных систем должна вестись в "центре событий" – в Силиконовой долине, поэтому новое подразделение было размещено в Маунтин-Вью, штат Калифорния.

Основная конструкция

Вместо пакетной обработки данных, конструкция будет специально адаптирована для интерактивной работы. Это подразумевало встроенный графический движок и 2 ГБ оперативной памяти, работающую под управлением BSD Unix 4.2. Машина должна была обеспечивать производительность, сопоставимую с производительностью современных систем Cray и ETA.

8 × 8 поперечная пружина

Основная идея системы Леклера заключалась в использовании 8×8 переключателя (crossbar) для высокоскоростного соединения восьми специализированных CMOS-процессоров. Дополнительный канал в переключателе позволял соединять его с другим переключателем, формируя единый 16-процессорный блок. Блоки были рассчитаны на 16 процессоров (вместо 8) для полного использования 16-банковой высокоскоростной памяти, разработанной вместе с остальной системой. Поскольку память была логически организована на "дальней стороне" переключателей, контроллер памяти выполнял многие задачи, которые обычно возлагались на процессоры, включая обработку прерываний и трансляцию виртуальной памяти, избегая обращений к переключателю для этих служебных операций. Полученные 16-процессорные блоки можно было соединять с помощью другого 8×8 переключателя, создавая 128-процессорную машину. Хотя задержки между 16-процессорными блоками были бы значительными, если задачу можно было чётко разделить на независимые части, эта задержка существенно не влияла бы на производительность. Когда требовалось обмениваться данными между банками памяти, система балансировала запросы: первым доступ получал процессор, находящийся в начале очереди ("левый"), затем процессор в конце очереди ("правый"). Процессоры добавляли свои запросы в соответствующий конец очереди в зависимости от их физического расположения в машине. Считалось, что простота и скорость этого алгоритма компенсируют потенциальные преимущества более сложной системы балансировки нагрузки.

Инструкционный конвейер

Чтобы система могла работать даже при высокой задержке между узлами, каждый процессор использовал 8-ступенчатый конвейер команд. При работе с условными переходами использовался слот переменной задержки, окончание которого обозначалось битом в следующей команде. Этот бит указывал, что результаты перехода необходимо пересчитать в этот момент, что приводило к остановке процессора до завершения пересчета. Каждый процессор также включал в себя блок вычислений с плавающей точкой от Weitek. В маркетинговых целях каждый процессор назывался "вычислительным элементом", а стойка, заполненная 16 такими элементами, – "процессором". Это позволяло проводить выгодные сравнения производительности на процессор с другими суперкомпьютерами того времени. Процессоры работали на частоте 20 МГц в целочисленных блоках и 40 МГц для блоков вычислений с плавающей точкой, с намерением увеличить эту частоту до 50 МГц к моменту отгрузки. При пиковой производительности около 12 Мфлопс на вычислительный элемент, вся машина могла выдавать до 1,5 Гфлопс, хотя из-за задержек памяти эта цифра обычно была ближе к 250 Мфлопс. Хотя для процессора CMOS-машины того времени это было быстро, для суперкомпьютера это было едва ли конкурентоспособно. Тем не менее, машина охлаждалась воздушным способом и была бы самой быстрой машиной такого типа на рынке. Машина работала под управлением ранней версии ядра Mach для поддержки многопроцессорности. Компиляторы были разработаны для максимальной загрузки процессоров за счет уменьшения количества слотов задержки при условных переходах, и они особенно хорошо справлялись с этой задачей.

Смертельная ошибка

Когда он был представлен в 1989 году, стоимость конфигураций варьировалась от 2 до 8 миллионов долларов, а самая мощная из них, по заявлению разработчиков, достигала производительности 1,6 Гфлопс. Пытаясь определить место машины на рынке, Иван Сазерленд отметил, что их системы авиационного моделирования работали с большей скоростью, и что ES 1 был "отступлением для нас". При первом анонсе машина выделялась своим соотношением цены и производительности. Она значительно превосходила большинство конкурирующих систем, по крайней мере, теоретически. Обладая пиковой производительностью 1600 МИПС и стоимостью 2,2 миллиона долларов, она обходилась в 1375 долларов за МИПС, по сравнению с 4650 долларов за МИПС для современного миникомпьютера Alliant FX/40. Обзор Computerworld 1989 года рынка высокопроизводительных машин среднего класса выявил только одну машину того же класса – Connection Machine CM 2. Новый алгоритм "слева-направо" имел критический недостаток. В условиях высокой загрузки "средние" узлы могли оставаться необслуживаемыми и простаивать в течение тысяч циклов. К 1989 году стало очевидно, что потребуется перепроектирование, но к этому моменту на рынок выходили другие машины с аналогичным соотношением цены и производительности, и возникло давление с целью немедленной отгрузки. Первые две машины были поставлены в Калтех в октябре 1989 года и в Университет Колорадо в Боулдере в ноябре, но других немедленных продаж не последовало. Один экземпляр ES 1 хранится в Музее истории компьютеров. Эванс покинул совет директоров E&S в 1989 году, и голоса внезапно оказались против продолжения проекта. E&S искала покупателя, заинтересованного в продолжении разработки, но не найдя такового, они закрыли подразделение в январе 1990 года.