Билл Шаренберг, Sun Microsystems: "Будущее – за технологией ChipMultiThreading"

9 июль, 2007 - 11:55КО

Одним из основных докладчиков на прошедшей в апреле конференции Sun Solution Day был Билл Шаренберг (Bill Scharrenberg), занимающий должность технического посла компании (Sun Technical Ambassador). Вполне естественно, что темой нашей беседы стали перспективные технологии в области микропроцессоров.

Сегодня можно смело говорить о наступлении эпохи многоядерности. Все ведущие производители выпускают многоядерные чипы. Чем отличается подход Sun в проекте Niagara от подходов построения многоядерной архитектуры Intel и AMD?

Первый вопрос, который надо решать при проектировании многопотоковых систем, это проблема эффективного использования ресурсов процессора, иными словами, что происходит в случае, если требуемых данных не оказалось в кэш-памяти и процессору приходится обращаться к основной памяти. Что делается для этого сегодня в промышленности? Используются методы предсказания ветвлений (branch prediction), исполнение команд с изменением последовательности (out of order execution), увеличение объема кэш-памяти на чипе. Продукты в результате таких подходов получаются и дорогостоящие, и энергоемкие.

Sun Microsystems "Будущее – за технологией ChipMultiThreading"

Что, собственно, происходит в обычных однопотоковых микропроцессорах? Если случается промах в кэш-памяти, то процессор должен ждать, пока нужные данные не считаются из основной памяти. Это и есть узкое место. Если мы посмотрим на развитие вычислительной техники, то увидим, что, скажем, тактовая частота процессора увеличивается вдвое примерно каждые два года, тогда как время доступа к памяти – вдвое за шесть лет. Таким образом, разрыв между вычислительной мощностью самого процессора и возможностями памяти становится все больше. Процессор, вместо того чтобы выполнять полезную работу, стоит и ждет ответа памяти. И это может занимать несколько сотен циклов CPU. А это приводит к тому, что его ресурсы используются далеко не на 100 %. К примеру, если из 100 циклов процессора 99 выполнялась полезная работа, а в одном цикле потребовалось ждать отклика от памяти, что займет 300–500 циклов. И все это время процессор продолжает потреблять энергию и выделять тепло! Получается, что его КПД в этом случае 15–20 %.

Для повышения уровня КПД CPU мы реализовали технологию, названную ChipMultiThreading (CMT). Что же такое ChipMultiThreading компании Sun? Это комбинация нескольких процессоров на чипе с мультиядерностью каждого процессора и аппаратной реализацией многопотоковости. Она отличается от технологии параллельной многопотоковости SMT (Simultaneous MultiThreading), для которой Intel использует термин Hyper-Threading.

Как в общих чертах работает CMT? Возьмем, к примеру, ядро процессора, способное обрабатывать четыре потока. Когда чип фиксирует промах в кэш-памяти в одном из потоков, то управление передается другому; когда же случается очередной промах, то работает следующий поток и т. д. Таким образом достигается бoóльшая загруженность ресурсов процессора. Еще раз подчеркну: мы используем не SMT, а CMT с аппаратной реализацией многопотоковости. В то же время при очень длинном конвейере реализация SMT весьма сложна с алгоритмической точки зрения.

Что в этом плане сделала AMD, так это встроила контроллеры памяти в чип микропроцессора и использовала шину HyperTransport.

У нас на процессоре UltraSPARC Т1 на самом деле четыре контроллера памяти, причем они ориентированы на память с параллельной обработкой DDR 2.

Чем отличаются процессоры Niagara? Во-первых, у них короче конвейер, во-вторых, меньше тактовая частота. Это позволяет реализовать более мощное распараллеливание обработки.

Сегодня даже Intel вынуждена признать, что быстродействие CPU – это еще не все. Куда важнее ее отношение на ватт рассеиваемой мощности. Все больше фирм-изготовителей микропроцессоров, отказавшихся от идеи экстенсивного наращивания тактовой частоты, тоже стали в качестве основного показателя рассматривать производительность на ватт рассеиваемой мощности.

Сохранятся ли различия в подходах Intel и Sun к многоядерной архитектуре или будет наблюдаться конвергенция?

Думаю, что будет иметь место конвергенция. А вот каким путем она пойдет и когда завершится, пока, разумеется, сказать трудно. Но можно обратиться к учебнику, по которому сейчас учатся все инженеры-системотехники в США. Он был написан двумя деканами Берклиевского и Стэнфордского университетов в Калифорнии. В нем они рассматривают состояние архитектуры микропроцессоров на современном рынке. Так вот, там черным по белому написано, что именно данная технология СМТ, т. е. многопотоковость, реализованная на уровне ядра CPU, является основным направлением развития микропроцессоров и микросистем, и за ним будущее.

Конкурируют ли процессоры семейства Niagara с многоядерными процессорами Intel и AMD или они дополняют друг друга?

Здесь ответ будет зависеть от программного обеспечения и решаемых задач. К примеру, задачи, связанные с интенсивными вычислениями с плавающей запятой, обычно однопотоковые, но в этом потоке нужна очень большая вычислительная мощность. В этом случае я бы посоветовал использовать процессоры x64 Intel новой серии или AMD Opteron. В серверных же приложениях однопотоковые задачи встречаются довольно редко. Возьмем, скажем, Google. Там каждый пользователь создает свой поток, но этих пользователей – миллион. Здесь, конечно же, требуется многопотоковая обработка, и вот тут уже наши 32-потоковые процессоры, вне сомнения, превосходят по характеристикам.

Sun Microsystems "Будущее – за технологией ChipMultiThreading"

Если взять три области – высокопроизводительные вычисления, обработку данных и Web, то на сегодняшний день CPU UltraSPARC Т1 хорошо применяются в последней. Так, в высокопроизводительных вычислениях лучше себя показывают процессоры х64, которые, впрочем, используются и в двух других упомянутых областях. А вот новое поколение чипов UltraSPARC Т2 уже внедрится и в сегмент высокопроизводительных вычислений. Поэтому в чем-то наши процессоры конкурируют, а в чем-то взаимно дополняют друг друга.

Какие основные особенности процессоров семейства Niagara вы бы хотели отметить?

Существует несколько моментов, которые необходимо подчеркнуть. О производительности как таковой мы не говорим, это само собой разумеется. Первое, на что хочется обратить внимание, это низкое энергопотребление – 80 Вт на 32 потока, меньше 3 Вт на поток. Второе – полная совместимость на уровне двоичного кода. Это чрезвычайно важный фактор. Если у вас работают сейчас на SPARC-процессорах под управлением Solaris 10 какие-нибудь приложения, то на чипах Niagara они тоже будут работать.

Далее, наличие в ядре сопроцессора криптографической обработки. Если вам нужно, например, шифрование по алгоритму RSA, то вы можете обрабатывать до 2000 ключей с самой большой скоростью, на которую только способен сопроцессор. Это в пять раз быстрее, чем может дать CPU Xeon с тактовой частотой 3 GHz или Power5 – 2 GHz.

Данные процессоры высокоэффективны в так называемой метрике SWaP – по первым буквам слов Space (пространство), Watt (мощность) и Performance (производительность). Этот показатель вычисляется как частное от производительности (взятой по какому-нибудь тесту, SPECjbb или Lotus Notes), деленной на произведение занимаемого объема в монтажных единицах (rack units) на потребляемую мощность в ваттах. Чем больше этот показатель, тем лучше. Характерный пример: скажем, наш сервер имеет показатель 23, а сервер конкурентов – приблизительно 5, т. е. наша машина по этому параметру лучше в четыре с лишним раза.

Являются ли процессоры Niagara универсальными или они оптимизированы под определенный класс задач?

Здесь тоже ответ будет положительным на оба варианта, предложенные в вопросе. Например, процессоры UltraSPARC Т1 или T2 мы изначально планировали как специализированные для Web-приложений, но наши клиенты попробовали применить их для обработки баз данных и сочли, что они пригодны для этой цели. Отзывы заказчиков заставили нас нарастить возможности по оперативной памяти – теперь ее объем может достигать 64 GB.

Sun Microsystems "Будущее – за технологией ChipMultiThreading"

Микропроцессоры UltraSPARC Т1 содержали только один арифметический сопроцессор, и поэтому не очень хорошо подходили, скажем, для интенсивных вычислений с плавающей запятой. Несмотря на это можно говорить о том, что они не просто специализированы для какой-то области применения, а все-таки более или менее универсальны.

В микропроцессорах следующего поколения Niagara 2 и Victoria Falls (Водопад «Виктория») значительно усилены возможности по части вычислений с плавающей запятой – они имеют восемь блоков для обработки, поэтому способны продвинуть эту технику в направлении и обработки баз данных, и высокопроизводительных вычислений.

Какими особенностями будет обладать чип Rock и когда планируется его выход на рынок?

Процессоры Rock также реализуют технологию многопотоковой обработки CMT, но по архитектуре они радикально отличаются от чипов Niagara. Как трансформируются вычислительные машины, когда появятся процессоры Rock, можно отчасти судить по изменениям в технике на процессорах Niagara 1 и следующего поколения Niagara 2.

Вычислительные машины на CPU Rock будут использоваться в первую очередь для обработки баз данных. Однако у них имеются неплохие перспективы применения и как Web-приложений, и для высокопроизводительной обработки. Они будут обладать очень хорошими характеристиками по вычислениям с плавающей запятой.

На рынке они появятся во втором полугодии 2008 г. (я имею в виду не сам процессор, а вычислительные машины на его базе). Сам чип уже выпущен с фабрики и установлен в тестовые системы. Недавно на них был загружен Solaris и проведены первые испытания.

Наблюдаются ли какие-то общие тенденции в разработке процессоров у ведущих производителей?

Что касается общих тенденций, то основные из них – это повышение быстродействия и снижение энергопотребления. Если говорить о микропроцессорах, то это, конечно же, выпуск более новых производительных моделей и ряд модификаций существующих в сторону уменьшения энергопотребления. Пристальное внимание уделяется сегодня вопросам рассеивания тепла внутри микропроцессора. Если говорить о вычислительных машинах и ЦОД, то на первый план здесь выступают вопросы охлаждения и циркуляции воздуха внутри систем. Вот что занимает сейчас умы разработчиков. Три показателя, важнейших для центров обработки данных, – это потребляемая мощность, рассеиваемая энергия и массогабаритные характеристики, т. е. то, сколько места занимают вычислительные системы. Ведь земли больше у нас не становится, поэтому строительство новых зданий для вычислительных центров – чрезвычайно дорогостоящая затея. И даже если начать производить больше электроэнергии, все равно остается сложный вопрос о том, как построить распределительные сети, если мощностей существующих не хватает.

Недавно в рамках совместного проекта с Fujitsu была анонсирована система SPARC Enterprise System. Свидетельствует ли это о стабильном положении процессоров SPARC64 на рынке? Каковы перспективы этого проекта?

В отношении процессоров SPARC64 общая политика фирмы состоит в том, что выпуск какой-то новой серии изделий совершенно не приводит к сокращению производства предыдущей. Мы еще довольно долго продолжаем выпускать и поставлять на рынок более старые модели.

Ну а устройства, которые мы называем АPL (Advanced Product Line) – это новая техника, основанная на новом поколении процессоров SPARC. Она будет отличаться и повышенной производительностью, и, что очень существенно, более высокой надежностью. Для нас традиционно, что каждая новая серия вычислительных машин, которую мы выпускаем, обычно отличается от предыдущих не только более высокой производительностью, но и значительно улучшенными показателями надежности. И что важно, при этом поддерживается полная совместимость на двоичном уровне с предыдущими системами. Это позволяет нам продвигаться, захватывая новые доли рынка, чем, собственно, мы и отличаемся от основных конкурентов.

В свою очередь для независимых производителей программного обеспечения широкая популярность операционной системы Solaris является стимулом к тому, чтобы писать под нее новые программы и портировать уже существующие. Кроме того, политика открытости, которую проводит фирма Sun, дает нашим заказчикам бoльшую свободу выбора.

Имеются ли в Украине проекты, базирующиеся на процессоре Niagara?

Продукты на основе этого процессора оказались востребованными с момента появления в портфеле компании. Многие из наших клиентов в Украине сразу же нашли ему применение. Ряд проектов мы выиграли у конкурентов во многом за счет уникальности этого приложения. Я затрудняюсь назвать точное количество продаж, но их достаточно много.

В целом на сегодняшний день по всему миру количество поставленных нами вычислительных машин соответствует более чем миллиону вычислительных потоков.