Процессор IBM Power5 заслуживает второго взгляда

Если бы все было в равных условиях и IBM сделала бы свои системы такими же доступными, как Dell и Hewlett-Packard, то процессор IBM Power5 мог бы похоронить Intel Itanium 2. Впервые представленный прошлым летом, Power5 - это один-два удара, триумф инженерной мысли от компания, которая выделяется не только дизайном процессоров, но и субмикронной наукой производства и упаковки микросхем.

Конечно, Power5 достаточно быстр. Но это также можно рассматривать как первую серьезную попытку IBM удовлетворить потребности клиентов, помимо скорости. Power5 предлагает улучшенную энергоэффективность и потрясающую масштабируемость, поддерживает операционные системы сторонних производителей (включая Linux и Windows) и обеспечивает разделение и виртуализацию, не имеющее аналогов в современных технологиях Intel.

Power5 также является предвестником нового поколения 64-разрядных рабочих станций и серверов на базе PowerPC от давнего партнера IBM по Power, Apple Computer. А недавно IBM сделала неожиданный шаг для компании, основанной на патентах, опубликовав архитектуру и инструменты Power под открытой лицензией.

Существует так много способов, которыми влияние Power5 выходит за пределы основной базы IBM, состоящей из состоятельных клиентов. Хотя IBM также продает серверы Itanium 2, Opteron и Xeon, похоже, что компания явно намеревается передать системы Power5 в руки администраторов Linux и Windows. Будет ли это иметь смысл, будет зависеть от заказчиков, но чистая техническая мощь Power5 и неустойчивость архитектуры Itanium требуют, чтобы флагманский процессор IBM проехал под нашим микроскопом.

Секреты силы

IBM неизменно привлекала самые блестящие умы, тех инженеров, которые заслуживают прозвища «компьютерный ученый». В 1980-х годах эти ученые придумали архитектуру процессора, ориентированную на производительность: IBM 801, оригинальный процессор RISC. Наследие 801-го продолжает серию процессоров IBM Power корпоративного класса.

Основное различие между процессором RISC и процессором CISC, таким как Intel x86, можно рассматривать как перетягивание каната между программистами и разработчиками микросхем. Процессоры CISC призваны облегчить жизнь разработчикам приложений за счет сокращения общих операций до отдельных долго исполняющихся собственных инструкций, что дает CISC репутацию медленного, но дружелюбного устройства. По сравнению с этим RISC быстр и недружелюбен. Каждая из его простых инструкций служит очень узкой цели, быстро выполняется и исключительно хорошо распараллеливается. RISC требует терпеливых, одаренных программистов и тщательно оптимизированных компиляторов; Успех RISC свидетельствует об их изобилии.

Самым известным атрибутом Power5 является интеграция двух дискретных ядер RISC на одном кристалле. Объявления AMD, Intel и Sun Microsystems относительно будущих многоядерных процессоров привлекли внимание к этому аспекту Power5, но многоядерность была также особенностью его предшественников, Power4 и Power4 +. Согласно IBM, Power5 полностью совместим с исполняемыми файлами Power4. Чудо мультиядра в том, что он обеспечивает несбыточную мечту о большей скорости в меньшем пространстве без заметного повышения температуры. Но, как вы увидите, многоядерный процессор - это не просто SMP на кристалле.

Во-первых, ядра Power5 имеют очень быстрый кэш 2-го уровня. Скорость и количество кэш-памяти являются фактором производительности всех микропроцессоров. (Эволюция x86 показывает, что Intel полностью одержима кешем.) Когда простые инструкции проходят через RISC-процессор так быстро, эффективность кеширования в сокращении количества обращений к RAM становится ключом ко всей конструкции.

Кэш уровня 2 Power5 составляет чуть менее 2 МБ. При использовании общего кэша данные, полученные одним ядром, немедленно становятся доступными для другого, увеличивая вероятность того, что выборка следующей программной инструкции или блока данных не потребует обращения в ОЗУ, снижающее производительность. Но общий кеш также повышает вероятность того, что ядра будут одновременно пытаться получить доступ к кешу, чего они не могут.

IBM реализовала временное решение для конфликтов кеш-памяти, разделив кэш-память 2-го уровня на три сегмента. Такая конструкция обеспечивает квазиодновременный доступ к кеш-памяти, если оба ядра обращаются к разным сегментам кеш-памяти. У IBM есть еще одно творческое решение проблемы конкуренции за кеш-память второго уровня: громоздкий внешний кеш-память третьего уровня объемом 36 МБ. Каждое ядро ​​владеет исключительно своим кешем 3-го уровня, поэтому конфликты между ядрами исключены. Хотя кэш уровня 3 не так быстр, как уровень 2, уровень 3 намного быстрее, чем основная память, и дизайн Power5 делает связь между его ядром и связанным с ним кешем уровня 3 прямой связью. Мы считаем, что переработка IBM дизайна кэш-памяти 3-го уровня одна из главных побед в разработке Power5.

Еще одно существенное преимущество Power5 - наличие встроенных контроллеров памяти. Каждое ядро ​​Power5 имеет собственный контроллер и способно управлять выделенным блоком основной памяти. Это оказывает огромное влияние на общую производительность, как мы видели, например, при сравнении пропускной способности памяти Opteron и Xeon. А в случае Power5 эта конструкция соответствует стратегии IBM по многоуровневому распараллеливанию.

Двух недостаточно

Power5 - это не просто двухъядерный процессор; в нем реализована функция SMT (одновременная многопоточность) Power4, которая дает каждому ядру возможность выполнять инструкции из двух потоков одновременно при определенных условиях. SMT похож на Intel HTT (Hyper-Threading Technology), но с явными преимуществами, которые расширяют «определенные условия» и динамически оптимизируют распараллеливание путем анализа и определения приоритетов потоков, чтобы сделать параллельное выполнение более эффективным - гораздо более эффективным, как мы думаем. Несмотря на то, что это сложно изолировать при тестировании, реализация Power5 должна превзойти максимальное 30-процентное повышение, которое Intel планирует для HTT.

Power5 добавляет две основные, но очень необходимые схемы приоритизации потоков. Динамическая балансировка ресурсов пытается обеспечить плавное прохождение потоков инструкций путем анализа поведения потоков и выделения кода, который может замедлить поток SMT. Например, инструкции, которые должны выполняться последовательно для получения точного результата, могут на время заблокировать этот поток в процессоре. Power5 пытается предсказать это и запускать более простые инструкции до тех пор, пока не останется место для выполнения последовательности без засорения SMT.

Еще одно замечательное преимущество дизайна - регулируемый приоритет потока в Power5, который дает ОС, драйверам и приложениям возможность назначать произвольный уровень приоритета каждому потоку. Этот определяемый приложением приоритет потока учитывается в расчетах динамической балансировки ресурсов и используется в более широком смысле для определения продолжительности времени, в течение которого поток остается активным в ЦП. Это также дает операционным системам простой способ управления энергосбережением.

Если у вас работает много высокоприоритетных потоков, ящик будет перегреваться. Но по мере того, как ОС сбивает приоритеты потоков, ЦП будет выполнять больше циклов простоя и, следовательно, работать с меньшим охлаждением. Если вы сбрасываете все приоритеты потоков до самого низкого уровня, ЦП переходит в спящий режим с низким энергопотреблением. Это самый простой подход к управлению питанием, который мы можем себе представить.

Наконец, Power5 использует то, что ему известно о средствах, необходимых для каждой инструкции RISC, по сути, для отключения тех частей микросхемы, которые в данный момент не нужны. Это потенциально может по-новому взглянуть на печально известные проблемы Power и тепла. Это, безусловно, кажется проще, чем схемы управления питанием на основе ОС, например, используемые в процессорах x86.

Вы можете никогда не заметить

Только в технологиях Power5 может править. Но это может показаться невероятным для многих скептиков Itanium 2, разделяющих свое мнение с, большинство наблюдателей уже назвали конкурс Itanium 2 / Power5 в пользу Intel.

Это странная оценка, потому что в данном случае IBM подталкивает Intel к Intel. RISC владеет рынком Unix, Unix владеет рынком среднего и высокого уровня, а Intel не занимается RISC. На эти многомиллионные заказы на закупку крупных железных дорог он не отвечает. Intel фактически заблокирована, если она не сможет убедить покупателей в том, что Itanium 2 отменяет RISC. Сможет ли Intel прорваться? Мы думаем, что Itanium потребуются годы, чтобы отодвинуть RISC в сторону, и, пока он не появится, Power и Sparc будут продолжать развиваться.

Сложно назвать это тем, что IBM хочет рынок Intel так же, как Intel хочет рынок IBM. IBM продает серверы Power5 за 5000 долларов с предустановленным Linux. Вернитесь назад и просмотрите спецификации, чтобы понять, почему сервер Power5 за 5000 долларов может быть хорошим подспорьем.

Аналитики, гравирующие надгробия для Power, отмечают, что бизнес IBM по производству микросхем не приносит денег. Но ее системный бизнес есть, и теперь эти два подразделения составляют одно целое. Это разумный ход: производить микросхемы для систем, которые вы продаете; строить системы на основе производимых вами микросхем. Публикация дизайна и инструментов - тоже умно. Каждый открытый лицензиат - это потенциальный заказчик-производитель, и свободная интеллектуальная собственность будет поступать от гениев, не получающих зарплату в IBM.

Это хорошие стратегии для того, чтобы приблизиться к входному рынку. Если бы только IBM не приходилось иметь дело с клиентами. Big Blue никогда не удавалось привнести в нижнюю часть своего каталога блеск бренда и доверие клиентов, которыми Dell и HP пользуются в полной мере. Отличная работа, проделанная инженерами IBM, вызвана плохим маркетингом компании. По всей вероятности, если вы сейчас не используете оборудование IBM, вы никогда не взглянете на сервер Power5, независимо от цены.

IBM намеренно связала успех Power5 с Linux на начальном уровне. Но сложно извлечь дополнительную пользу из программного обеспечения, которое, по мнению общественности, можно загрузить бесплатно, а Linux - это ОС, для работы с которой покупатели не склонны покупать новое оборудование. Другими словами, Linux не будет продавать серверы начального уровня Power5. Самый дешевый сервер Power5 от IBM при цене от 5000 до 6000 долларов недостаточно дешев по сравнению с очень дешевым сервером Opteron или Xeon EM64T (с технологией Extended Memory 64) под управлением Linux.

С другой стороны, большое железо Unix продает себя, и клиенты всегда будут покупать больше того, что они уже используют. Они будут покупать то, что советуют их консультанты по решениям. IBM превосходит всех остальных в своей способности заискивать перед крупными клиентами. Вы не можете оторвать клиента от оборудования IBM среднего уровня и выше. Таким образом, общее сообщение о Power5 будет искажено для прессы и широкой публики, но иски на местах обходят маркетинг IBM. В отношениях между IBM и заказчиком нельзя победить IBM.

В Power5 есть все: скорость, простота, инновации, полная обратная совместимость, зрелый набор инструментов для разработки и поддержка технологического гиганта. Это непревзойденное инженерное достижение, созданное, возможно, самыми умными инженерами в мире. Если маркетинг IBM когда-либо совпадет с интеллектом ее инженеров, берегитесь, Intel.