Обзор микроархитектур современных десктопных процессоров. Часть 3
Страница 9. Процессоры компании IBM


Процессоры компании IBM

Компания IBM развивала процессорные микроархитектуры главным образом для серверных применений. Нынешнее поколение архитектуры было разработано в 2001 г. и реализовано в серверном процессоре Power4. Позднее был создан десктопный вариант PowerPC 970, отличающийся добавлением векторного блока 32-битной арифметики с плавающей точкой VMX, а также уменьшенным размером L2-кэша и изменённым внешним интерфейсом. Этот процессор используется в персональных компьютерах компании Apple, а также в модулях компании IBM для построения вычислительных кластеров и небольших серверов. В настоящее время выпускается двухъядерный вариант процессора PPC970MP.

Процессор PPC970 имеет очень хороший потенциал пиковой производительности, особенно для арифметики с плавающей точкой. Этот потенциал основан на увеличенной ширине выборки и исполнения инструкций (4-5 за такт) вкупе с большим числом очередей внеочередного исполнения, портов запуска и функциональных устройств. Поэтому для регулярных кодов с хорошим планированием инструкций PPC970 способен достигать высокой скорости вычислений.

С другой стороны, в микроархитектуре процессора имеется множество упрощений, которые делают её недостаточно «динамической». Также имеется ряд недостатков в реализации кэшей и функциональных устройств. Приведём список основных ограничений и недостатков микроархитектуры PPC970:

  • статическое разбиение потока МОПов на группы по 4-5 элементов с привязкой очередей и функциональных устройств к позициям этих элементов;
  • наличие множества ограничительных условий, снижающих число МОПов в формируемой группе (на выходе из декодера);
  • недостаточно эффективная реализация L1-кэшей, имеющих низкий уровень ассоциативности и слишком большой размер блока;
  • завышенное время выполнения предсказанного перехода (3 такта против 2 тактов у других процессоров);
  • высокая латентность выполнения целочисленных операций (2 такта) и операций с плавающей точкой (6 тактов);
  • недостаточная пропускная способность памяти из-за ограниченной скорости шины.

Наиболее важным является первый недостаток — статическая привязка очередей и устройств к позициям инструкций. Такая привязка может привести к несбалансированной загрузке однотипных устройств и заметному снижению производительности. Большое время выполнения переходов и арифметико-логических инструкций также снижает производительность на кодах с нерегулярной структурой. Таким образом, процессор PPC970 не очень хорошо сбалансирован и демонстрирует недостаточно высокую производительность на большинстве применений, несмотря на наличие у него хорошего потенциала. Это явилось одной из причин, по которой компания Apple в настоящее время отказывается от использования процессора PPC970 в своих компьютерах и переходит на процессоры архитектуры Intel Core (P8).

Однако серверные варианты процессора — Power4 и Power5 — нашли широкое применение в соответствующих нишах. Эти процессоры имеют двухъядерную организацию с большими интегрированными L2-кэшами, общими для обоих ядер. Конструктивно процессоры Power4 и Power5 объединяются на многочиповой сборке, содержащей 4 процессорных кристалла и кэш 3-го уровня большого объёма. Процессоры связаны друг с другом, с L3-кэшами и с оперативной памятью очень быстрыми шинами. Благодаря этому многопроцессорные системы с общей памятью, построенные на этих процессорах, достигают рекордной производительности на научно-технических задачах, обладающих высокой регулярностью. Наилучших результатов достигает процессор Power5, который не очень значительно отличается от своих предшественников (Power4 и PPC970) по микроархитектуре, однако имеет вынесенный индивидуальный контроллер памяти. Благодаря этому подсистема памяти обладает очень высокой суммарной пропускной способностью, что снижает потери на обращения в память при выполнении большого числа задач.

В настоящее время компания IBM разрабатывает новую, более совершенную микроархитектуру Power6. Эта архитектура будет основана на значительном повышении тактовой частоты — в 1.5 раза и более в сравнении с конкурирующими процессорами. Такое повышение частоты будет обеспечено в первую очередь за счёт применения современных электронных технологий и усовершенствования схемной логики, а также за счёт некоторого увеличения длины конвейеров. Предполагается, что удлинение конвейеров будет достаточно умеренным и не приведёт к необходимости введения неоднозначных «революционных» новшеств в микроархитектуру (как в процессоре Intel P-4). Поэтому компания IBM ожидает пропорционального роста производительности процессора с тактовой частотой. Такому росту производительности также будет способствовать реализация эффективного L1-кэша размером 64 Кбайта с высоким уровнем ассоциативности, низколатентное выполнение арифметико-логических операций и наличие (как и в предыдущих процессорах Power4/5) сдвоенного блока арифметики с плавающей точкой, обеспечивающего выполнение четырёх 64-битных операций за такт.

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

Несмотря на то, что Power6 ориентирован в первую очередь против серверного процессора Intel Itanium (IA-64), его появление в 2007 г. должно обострить конкурентную борьбу в сфере десктопных процессоров и стимулировать дальнейшее повышение их производительности. Этому должно способствовать также и предполагаемое создание «облегчённого» десктопного процессора на базе новой архитектуры (G6), который придёт на смену нынешнему процессору PPC970 (G5).

Будем надеяться, что процессор Power6 даст новый импульс развитию высокочастотных микроархитектур — только на этот раз не за счёт чрезмерного увеличения длины конвейеров вместе с сопутствующими неприятными эффектами, а посредством тщательного совершенствования и оптимизации схемной логики при сохранении достаточно консервативных и устоявшихся микроархитектурных принципов.

Олег Бессонов ( Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script )
 
« Предыдущая статья   Следующая статья »