Часть 9. EV7, EV79, EV7z, EV8

Первые новости об архитектуре процессора
21364 (
EV7) прозвучали в октябре 1998 на Microprocessor Forum; уже тогда было известно, что процессор будет базироваться на ядре EV6, но с интегрированным контроллером Direct Rambus DRAM (предположительно, 4-канальным) и кэшем L2 (1,5Мб с 6-канальной ассоциативностью). Также прозвучало, что никаких изменений в ядре EV6 не планируется, хотя возможна и другая причина: разрабатывать было уже некому, так как штат инженеров-проектировщиков сократился довольно существенно. Ожидалось, что дизайн EV7 будет закончен к 2000.

После поглощения Compaq наследие в виде архитектуры Alpha было для HP ненужным довеском, так как она развивала свою 64-битную архитектуру PA-RISC (Precision Architecture RISC) и состояла в альянсе с Intel по разработке её 64-битной архитектуры IA-64 (то есть Itanium'а). Поэтому интерес HP в плане архитектуры Alpha ограничился сбытом и поддержкой унаследованных от Compaq линеек серверов на EV6/EV67/EV68, а также запуском в производство EV7, окончательно представленного в январе 2002.

Как и ожидалось, в основе EV7 лежало ядро EV68 (абсолютно без изменений) и несколько дополнительно интегрированных блоков:
два контроллера памяти (два Z-box'а, для Direct Rambus DRAM PC800),
многофункциональный маршрутизатор (R-box, для поддержки многопроцессорности и сетевых функций), и
полноскоростной кэш L2 (S-cache, 1,75Мб с 7-канальной ассоциативностью). Разрядность шины данных к S-cache была как и у EV6 (128 бит), и собственно кэш работал со значительными задержками (12 тактов при чтении). Оба Z-box'а и R-box работали на 2/3 частоты ядра. Скорость работы каналов памяти зависела от Z-box'ов и составляла половину их частоты (соответственно, 1/3 частоты ядра), но с использованием технологии DDR.

Каждый Z-box поддерживал
5 каналов памяти (4 основных и 1 вспомогательный) разрядностью по 18 бит (16 для команд/данных/адресов, 2 для ECC). Вспомогательный канал был опцией, и мог использоваться для организации отказоустойчивого массива в памяти (приблизительно, как RAID3); к примеру, при записи в память учетверенного слова (quad-word, 64 бита) оно разделялось на 4 слова (word, 16 бит), каждое из которых отправлялось по своему каналу, а по вспомогательному записывалась контрольная сумма. Также, каждый Z-box мог держать до 1024 страниц памяти открытыми. Суммарная теоретическая пропускная способность подсистемы памяти одного EV7 составляла около 12Гб/с. Естественно, так как каждый EV7 в многопроцессорной системе располагал своей областью памяти, то такая модель памяти называлась NUMA (Non-Uniform Memory Access), в противовес к традиционному SMP (Symmetric Multi-Processing), в котором все установленные процессоры имели доступ к единой (общей) области памяти. Поэтому, каждый процессор в системе (из максимум 128) имел доступ к памяти как через свои контроллеры, так и через контроллеры других процессоров. Функцию связи между процессорами, как и между отдельно взятым процессором и локальной периферией, выполнял R-box. Он поддерживал 4 независимых канала с теоретической пропускной способностью в 6 Гб/с каждый (по одному на каждый подключенный соседний процессор), а также 1 дополнительный канал для скоростного ввода/вывода.

Так как EV7 внутренне унаследовал все интерфейсы EV6, то в процессоре должен был быть реализован блок поддержки системной шины последнего. Хотя эта часть процессора нигде не документировалась и даже не упоминалась, но определённые предположения касаемо её быстродействия всё же можно сделать. Так как минимальный рабочий коэффициент умножения у ядер EV6 был равен 3, то теоретическая пропускная способность магистрали к этому блоку составляла около 3Гб/с для EV7, что было в 4 раза ниже суммарных возможностей обоих Z-box'ов. Это было серьёзным аргументом в пользу того, что EV7 изначально задумывался для использования в многопроцессорных системах класса high-end.

Процессоры EV7 могли поключаться друг к другу по произвольным алгоритмам, но на практике использовались так называемые "torus" и "shuffle", причём второй был потенциально эффективнее в некоторых случаях (например, в 8-процессорной системе с алгоритмом подключения "shuffle" каждый процессор был непосредственно связан с 4 другими процессорами, а в случае с "torus" -- только с 3; нетрудно догадаться, что уже в 12-процессорной конфигурации этот аргумент отпадал).
Производился по 7-слойному 0,18µ CMOS8 техпроцессу, состоял из 152 млн. транзисторов (из них 137 млн. на I-cache, D-cache и S-cache), и, как следствие, имел огромную площадь ядра (397 кв.мм.). Частота экспериментальных образцов составила
1250МГц (155Вт TDP), хотя в производимых HP системах использовались процессоры с частотами от 1000МГц до 1150МГц. С инженерной точки зрения, EV7 заметно уступал предыдущим представителям архитектуры Alpha с точки зрения плотности размещения функциональных устройств на подложке, а поэтому нерационально использовал её площадь, что не замедлило отразиться на тактовых частотах и задержках при операциях с S-cache -- то есть, на производительности.
В декабре 2002 HP опубликовала пресс-релиз, в котором шла речь о появлении серверов на EV7 с частотой в 1150МГц уже в январе 2003, а вскоре должен был выйти
EV79 (по 0,13µ SOI техпроцессу), и на этом развитие архитектуры должно было прекратиться. В марте 2003, на ISSCC'2003, был представлен прототип EV79, с площадью ядра в 251 кв.мм., рассчитанный на напряжение в 1,2В, и работающий на частоте в
1450МГц (100Вт TDP). Но уже в октябре 2003 появились первые новости о трудностях, связанных с производством EV79 на фабрике IBM, а ещё через полгода процессор был окончательно отменён.

В августе 2004 было объявлено o выпуске последнего процессора Alpha,
EV7z с тактовой частотой в
1300МГц, на том же 0,18µ техпроцессе. Он был предназначен для установки исключительно в продукцию HP; также было заявлено, что сервера и рабочие станции архитектуры Alpha будут продаваться под маркой HP до 2006, а поддерживаться до 2011 года, но не более.

Отменённый
21464 (
EV8) должен был быть дальнейшим развитием EV7, с удвоенным количеством основных функциональных устройств (
8 целочисленных и 4 вещественных конвейера), и с увеличенным до 3Мб S-cache. Также была заявлена поддержка технологии SMT (Simultaneous Multi-Threading), которая должна была позволить одновременное выполнение (concurrent execution) до 4 программных потоков внутри одного ядра (возможно, эта технология была несколько родственной Intel HyperThreading). Площадь ядра прогнозировалась в 420 кв.мм. при 0,13µ SOI техпроцессе.


Эпилог

На момент написания статьи (апрель 2005) Alpha-системы всё ещё продавались, в основном через HP и Microway. Последняя даже предлагала относительно недорогие рабочие станции с 21164А и AlphaPC 164LX под Linux (за 2 тыс. долл. США в стандартной комплектации). Довольно значительное количество списанных (но все ещё работоспособных) рабочих станций и серверов, а также отдельных комплектующих, доступно через "онлайновые барахолки"; большинство этих систем прeдназначалось для работы с Windows NT, и на многие из них нельзя установить ни Digital UNIX, ни OpenVMS, а на некоторые даже *BSD (системы, не поддерживающие SRM console), хотя сохраняется возможность установки Linux из-под ARC/AlphaBIOS. Если вы имеете намерение приобрести Alpha-систему, выясните этот вопрос перед покупкой, чтоб не иметь впоследствии лишних проблем.

Согласно статистике, к июню 2001 только DEC и Compaq продали около 800 тыс. рабочих станций и серверов на Alpha. Точное количество систем, собранных и проданных другими компаниями, неизвестно, но эта цифра определённо превышает 500 тыс.
Многие утверждают, что архитектура Alpha умерла своей смертью. Надеюсь, после прочтения этой статьи у вас не останется сомнений, что её похоронили, причём заживо. Потому что так было выгодно.

История знает немало случаев, когда товар с худшими характеристиками вытеснял сопоставимый товар с лучшими техническими показателями. Возможно, первый товар стоил существенно дешевле второго. Также возможно, что второй товар продвигался на рынке существенно пассивнее первого. Или лицензионные отчисления были несопоставимы. Всё возможно. Не исключено, что маркетологи некоторых товаров, осознавая их ущербность, продвигают их на рынке наиболее агрессивно, понимая, что иначе их очередная зарплатa может оказаться последней. Одно очевидно: для успеха на рынке технические показатели того или иного продукта имеют далеко не самое первостепенное значение.

Жизнь продолжается...