Шел 1989 год. Компания Hewlett-Packard пребывала в муках болезненного процесса осознания реальности.
В самое ближайшее время стареющая PA-RISC-архитектура должна была достичь предела своих возможностей. У компании было только два пути: разработать другую архитектуру, которая может потребовать рекомпиляции или даже полной переработки существующего программного обеспечения, либо построить суперскалярную архитектуру, используя существующую RISC-технологию (Reduced Instruction Set Computer), но увеличив при этом размер чипа и его стоимость.
Компания HP выбрала построение новой архитектуры - WideWord, и позднее переименовала ее в EPIC (Explicitly Parallel Instruction Computing, технология параллельной обработки команд) - сокращение, которое скоро вытеснит RISC.
«Производительности RISC-архитектуры, на которой была построена PA-RISC, стало явно не хватать. EPIC — это реальный прорыв в быстродействии», — говорит Ту Тинг Ченг, менеджер программы HP по исследованиям и развитию компании Partner Consulting & Engineering Services, E-services Partner Division, который следил в компании за эволюцией конструкции чипа.
«Но когда в 1993 году HP закончила создание 64-разрядной архитектуры, ее руководители осознали, что компания не в состоянии производить растущие расходы на разработку и производство новой архитектуры, — продолжает Ченг. - Более того, возможности для применения объемного системного ПО под Unix стали выглядеть все более и более сомнительными».
И вновь HP оказалась на перепутье - необходимо было принять решение о том, как построить эту новую архитектуру без многомиллионных затрат. В конце концов было решено объединиться с другой компанией.
Между тем в 1994 году Intel - эта другая и весьма состоятельная компания, производящая микропроцессоры, - сама находилась на довольно шатких позициях. Ее двухлетние усилия в области собственного 64-разрядного решения, известного как P7, тоже наталкивались на проблемы.
Однако наибольшую угрозу для Intel и HP представлял появившийся в октябре 1991 года процессор Power, разработанный совместно компаниями IBM, Motorola и Apple Computer. Главное концептуальное преимущество Power состоит в том, что потенциально он может работать с операционными системами Windows NT, Unix и Macintosh.
В начале 1994 года HP предложила корпорации Intel работать вместе. В Intel с нескрываемым оптимизмом восприняли возможность партнерства с HP. Это впервые позволило применить масштабируемую операционную систему уровня предприятия на базе их архитектуры. Проект, над которым начали работать компании, был назван Merced, по имени реки в США, при этом EPIC была выбрана в качестве его базовой архитектуры. Intel немедленно прекратила работу над P7, однако некоторые ее наработки были включены в Merced. Окончательным результатом этой работы стал процессор Itanium.
«Мне кажется, что это было определено временем - HP проводила исследования в области будущих архитектур, а Intel искала новые архитектуры. Так совпало, что мы пришли одновременно к одному и тому же заключению», — говорит Ченг из HP.
Растущая поддержка
После объявления о выходе процессора Merced несколько промышленных тяжеловесов заложили в свои планы поддержку новой архитектуры, которая позднее стала выходить под маркой IA-64 (Intel Architecture 64-bit - 64-разрядная архитектура Intel). Наиболее важным сигналом для проявлявших беспокойство партнеров-разработчиков было объявление IBM о выпуске на базе IA-64 вариантов своей Unix-платформы одновременно с сохранением усилий компании по дальнейшей разработке процессора Power.
Безусловно, разработчики восприняли это с оптимизмом. Теперь они могли создавать приложения и системы на базе одной платформы, которая способна обеспечивать работу почти всех основных операционных систем. «Я думаю, что хорошо иметь несколько ключевых партнеров, объединенных одной платформой, особенно когда мы разрабатываем на ее основе будущие решения для клиентов», — говорит Джозефина Джонсон, менеджер консалтингового подразделения компании AU-system Singapore Pte Ltd, разработчика систем.
Однако наибольшую поддержку корпорация Intel получила совсем недавно, после того как компания Compaq Computer объявила о передаче ей своей команды по разработке процессора Alpha и снятии его с производства.
Результат этого весомого заявления не отразится ни на процессоре Itanium, ни на будущем чипе McKinley (столь ожидаемом преемнике Itanium). Более того, руководители Compaq считают, что большинство свойств, присущих Alpha EV8 (ныне ушедшего в небытие после отречения Compaq), будут интегрированы в процессор, который последует за процессором Madison (выпускаемым после McKinley) и появление которого ожидается в 2004 году.
Клиенты Compaq относятся к решению компании с оптимизмом. «Сейчас существует довольно много продуктов третьих компаний, которые работают на базе современной Alpha-архитектуры. Но при переходе на IA-64 станет еще лучше, поскольку появится намного больший выбор программного обеспечения различных разработчиков для решения наших задач в будущем. Это весомое преимущество», — говорит Дви Сиджихарто, главный финансовый менеджер индонезийской компании Astra Honda Motor, выпускающей мотоциклы.
Вызов Sun
В компании Sun Microsystems решили пойти другим путем, а именно: было принято решение построить суперскалярную архитектуру на базе имеющейся RISC-архитектуры, называемой SPARC (Scalable Processor Architecture).
В Sun настолько уверены в правильности своего выбора, что открыто посмеиваются над недавним вторжением Intel в область высокопроизводительных компьютеров, считая его «безнадежным». «Мы уже улучшили 64-разрядную реальность, а Itanium - это путь в никуда», — декларирует Энг Киа Чанг, директор по продажам компании Sun.
Решение Sun продолжать развитие UltraSPARC-процессоров на базе RISC-архитектуры основывается на широком распространении программ, созданных для работы под ОС Solaris. Переход на другой процессор может создать большие трудности для таких производителей программного обеспечения, как SAP AG или Oracle, использующих платформу компании Sun для своей продукции.
«Компания Sun не ищет непроторенных троп, поскольку у нас есть доказавшая свою эффективность архитектура. Мы хотим защитить инвестиции наших клиентов», — добавляет Энг.
В конце 1999 года Sun начала поставки процессоров UltraSPARC III с тактовой частотой 750 MГц. Недавно Sun и компания Texas Instruments, которая производит серию UltraSPARC-процессоров, объявили о выходе новой версии процессора UltraSPARC III, использующего более быструю технологию медных соединений.
По сообщениям из различных источников, следующим в семействе будет процессор UltraSPARC IV, незначительно отличающийся от предшественника и имеющий тактовую частоту более 1 ГГц.
Раздвоение личности
Однако наиболее амбициозной затеей компании Sun, которая может помешать претензии Intel на доминирование, будет следующий процессор UltraSPARC V. Новый чип сможет переключаться между двумя различными режимами в зависимости от работы, которую выполняет компьютер. Один режим будет приспособлен для сложных вычислений, а другой — для бизнес-транзакций, таких как запись информации в базу данных или извлечение данных из нее.
Имея параллелизм на уровне команд, процессор сортирует команды по видам и отправляет их на несколько параллельных «конвейеров», выполняющих свои действия одновременно, объясняет Натан Бруквуд, аналитик, работающий в компании Insight 64. Благодаря новейшей концепции параллелизма на уровне потоков (thread-level parallelism), или, другими словами, симметричной многопоточной обработке (symmetrical multithreading), несколько различных вычислительных задач могут выполняться одновременно посредством одного и того же конвейера.
Однако включение этих двух свойств в UltraSPARC V требует основательной перестройки, считает Бруквуд, и к моменту выхода UltraSPARC V на рынок конкуренты — Intel и IBM — скорее всего уже получат аналогичный результат.
«Весьма смелой является попытка столь масштабно и быстро работать над параллелизмом на уровне команд и симметричной многопоточной обработкой одновременно, — говорит Бруквуд. — Некоторые технологи считают, что лучше последовательно разрабатывать эти части технологии».
Двунаправленный подход придаст процессору UltraSPARC V довольно внушительные размеры, но, поскольку почти весь процессор будет работать в том или ином режиме, то потери [производительности] от его габаритов не будут играть особой роли, считает Дэн Маккэррон, аналитик компании Mercury Research. Зато размер процессора весьма существенно отразится на стоимости его производства, количестве потребляемой энергии и степени нагрева.
Однако компания Sun надеется выиграть на других направлениях. Современные процессоры Pentium, так же как и процессоры Athlon (AMD) и Power (IBM), могут работать в режиме, называемом out-of-order execution (исполнение с изменением последовательности), при котором процессор не ограничивается исполнением команд в порядке, посланном программой, отмечает Бруквуд.
По его словам, исполнение с изменением последовательности - необходимое условие для достижения компанией Sun параллелизма на уровне команд - позволяет процессору выполнять новую команду, даже если предыдущая еще находится в обработке, ожидая данные из более медленных частей памяти.
Например, IBM продвинулась в реализации этой концепции со своими микросхемами Power. «В Power4 очень много параллелизма, — говорит Бруквуд, рассуждая о двух процессорах, размещенных на одном кристалле кремния, и гордясь возможностями процессора осуществлять симметричную многопоточную обработку и исполнение команд с изменением последовательности. — Это будет процессор, на который стоит обратить внимание, когда он появится».
Несмотря на то что добавление параллелизма на уровне команд улучшает производительность процессора, не требуя от производителей переработки программного обеспечения, существует небольшая проблема, отмечает Бруквуд. И проблема эта связана с компиляторами, которые транслируют написанные людьми программы в команды, понимаемые процессором. Компилятор - вот та ключевая вещь, которая должна гарантировать, что команды, подаваемые на процессор, оптимальным образом используют преимущества новых устройств.
«Параллелизм на уровне команд очень чувствителен к возможностям компиляторов», — говорит Бруквуд. Именно над этой проблемой работает сейчас Intel, создавая EPIC.
Правило компиляторов
Процессор Itanium компании Intel соответствует «вычислительным» ощущениям того, что компьютеры никогда не бывают слишком быстрыми. При этом, имея множество регистров для операндов и промежуточных результатов (целочисленных и с плавающей запятой), процессору Itanium не понадобится слишком много времени для переброски данных между ядром процессора и основной памятью.
Большинство решений относительно того, какие команды следует выполнять вместе, будет приниматься компилятором. Это является философией разработки EPIC-архитектуры и дает процессору Itanium наибольшее преимущество в FPU (floating point unit - блок выполнения операций с плавающей запятой).
С другой стороны, это и является основной головной болью для разработчиков операционных систем, так как теперь производительность приложений привязана не столько к характеристикам процессора, сколько к особенностям компиляторов, которые будут использоваться производителями систем. А эта проблема уже хорошо знакома разработчикам, работающим на базе RISC-архитектуры.
В какой-то момент война процессоров постепенно превратится в войну компиляторов, идущую между производителями систем. «И это время не за горами, — говорит Ричард Коларуссо, консультант подразделения Alpha компании Compaq, отдела высокопроизводительных серверов. — Создатели компиляторов были наиболее недооцененной группой среди людей, которых я знал».
Однако необходимость уповать только на отточенность и эффективность компилятора начнет исчезать, когда после чипа Madison появится Deerfield. «Через некоторое время все увидят, как EPIC-архитектура станет еще немного умнее за счет улучшенной предикативной логики ветвлений, которую мы разработали в наших лабораториях», — говорит Коларуссо.
Предикативная логика ветвления — это инструмент, который используется для увеличения производительности чипов. «Анализируя работу программы, процессор сам решает, какие операции понадобятся в будущем», — объясняет Коларуссо. Если выбор сделан удачно (что происходит в большинстве случаев), то экономится немало процессорного времени, в противном случае тратится столько же времени зря.
Туманное будущее
Но пока Intel оттачивает стрелу Itanium, словно бы кто-то меняет само назначение высокопроизводительных вычислений. Дело в том, что высокая степень распределенности при обработке и широкополосная передача данных могут предоставить уникальную возможность для достижения производительности, которая будет замечена и оценена пользователями, - а это и есть не что иное, как скорость процессора, которая в конечном счете играет главную роль.
Однако распределенная обработка данных тут же наталкивается на препятствие, с которым давно знакомы производители процессоров RISC-архитектуры: как только несколько процессоров запрашивают одинаковые данные из памяти, проблема нехватки ресурсов от процессора переходит к контроллеру памяти и к другим аппаратным средствам. Компания Sun решила данную проблему посредством включения средств управления доступом к памяти в свой UltraSPARC III, подключающийся к 288-разрядной внешней шине памяти, которая способна масштабироваться для подключения до нескольких сотен процессоров, работающих с разделением памяти.
Медиа-обработка также тормозится, но не из-за отдельных операций, а из-за недостаточной пропускной способности. Процессор Power4 компании IBM ориентирован на широкополосную передачу данных со скоростью 10 Гбайт/с, которая почти в пять раз превышает первоначальные возможности Itanium. В Power4 встроена логика контроля памяти и кэша L3 с системой процессоров (каждый с двумя ядрами), объединенных в модули по четыре устройства. Таким образом, каждый модуль содержит большую часть восьмиканальной симметричной мультипроцессорной системы со 128-разрядными шинами в каждом направлении между каждыми двумя ядрами.
Впрочем, опыт Intel в маркетинге в совокупности с экспертными знаниями HP и Compaq все же может перевесить чашу весов в сторону EPIC. А при том что IBM демонстрирует ограниченную приверженность к собственным планам использования RISC-архитектуры, остается только посмотреть на то, как долго компания Sun сможет выдержать экономическое давление, оказываемое Intel.
«Теперь это уже не вопрос как, а вопрос когда процессор Itanium получит повсеместное распространение», — замечает Ченг из HP.