Каталог
ZV
ездный б-р, 19
+7 (495) 974-3333 +7 (495) 974-3333 Выбрать город: Москва
Подождите...
Получить токен
Соединиться
X
Сюда
Туда
x
Не выбрано товаров для сравнения
x
Корзина пуста
Итого: 
Оформить заказ
Сохранить заказ
Открыть корзину
Калькуляция
Очистить корзину
x
Главная
Магазины
Каталог
Мои заказы
Корзина
Магазины Доставка по РФ
Город
Область
Ваш город - ?
От выбранного города зависят цены, наличие товара и
способы доставки

Вторник, 23 сентября 2008 00:00

Nehalem за два месяца до анонса – все, что необходимо знать о новой архитектуре Intel

короткая ссылка на новость:

Первый взгляд на Nehalem



   Давайте для начала перед тем, как говорить непосредственно о герое нашего сегодняшнего обзора, снова вспомним немного истории. Первые двухъядерные процессоры Intel под названием Pentium D представляли собой «склейку» из пары независимых CPU класса Pentium 4, расположенных на одной подложке (под одним теплораспределителем). Между собой раздельные кристаллы могли общаться только через FSB, пусть и достаточно широкую для обеспечения необходимой пропускной способности и отсутствия проблем в реальных приложениях. В арсенале AMD тогда уже присутствовали Athlon 64 X2, два ядра которых располагались на одном кристалле. К сожалению, даже эти процессоры не обладали архитектурой истиной многоядерности. Первым CPU, в котором были заложены идеи более глубокие, чем объединение под одной крышкой нескольких не связанных друг с другом процессоров, стал мобильный Yonah, фактически удвоенный Pentium M Banias/Dothan с общим кэшем второго уровня. Кстати, CPU архитектуры Core Duo (без двоечки посередине, не следует путать с Conroe/Penryn) также базировались на принципах P6, впервые заложенных еще в Pentium Pro, получивших развитие в Pentium 2 и 3, а затем и в M. Венцом развития этой ветви технологий и стал Core 2 Duo, где интеграция ядер достигла еще большего уровня. Однако выводя на рынок уже упомянутые выше Core 2 Quad, Intel снова применила способ объединения пары теперь уже двухъядерных кристаллов Core 2 Duo. Реальных объяснений этому два – экономическая целесообразность (чем больше площадь кристалла, а 4 ядра, очевидно, занимают площади существенно больше, нежели 2, тем ниже процент выхода годных кристаллов и тем выше себестоимость производства) и недостаточная модульность ядра архитектуры Core/Penryn. Вряд ли можно назвать серьезным недостатком компоновку CPU Core 2 Quad с учетом отличных результатов при распараллеленных вычислениях, однако тот факт, что C2Q не является истинным четырехъядерным процессором, многим не нравился. AMD же удавалось удачно использовать рекламный слоган “Native Quad-Core Design” для своих Phenom X4, говорящий об изначальном упоре на многоядерный дизайн при проектировке K10.

   Все эти данные мы приводим затем, чтобы не потребовалось объяснять основную философию архитектуры Nehalem. Дело в том, что во главу угла при создании нового поколения CPU инженеры Intel поставили модульность и гранулярность архитектуры. Наши постоянные читатели прекрасно помнят, что представляет собой сегодняшний флагман NVIDIA – GT200. Это блочный чип, легко изменяя количество составных частей которого можно получать решения различных уровней производительности. Таких возможностей недоставало Core/Penryn – высокая сложность внутренних связей блоков процессора не позволила в рамках одного поколения CPU малой кровью интегрировать на кристалл, например, еще пару ядер. Такие возможности теперь есть у Nehalem. Взяв лучшие идеи из мира графических ускорителей, Intel создала настоящий конструктор, первый вариант сборки которого (Bloomfield) мы и будем тестировать всего через несколько месяцев. Взгляните на схему сами:
   Теперь Intel ничего не стоит конфигурировать ядро в зависимости от класса ПК, для которых предназначен разрабатываемый процессор. Стандартом для обычных домашних настольных десктопов в скором времени станет наличие четырех ядер, ноутбуки обойдутся двумя, а производительные серверы получат целых восемь ядер на кристалл! Пока это только теория, и готовящиеся Bloomfield Core i7 это именно Quad-Core модели, но на сегодня существуют и полностью рабочие шестиядерные прототипы – Intel действительно создала гибкую и модернизируемую архитектуру с широкими возможностями. Стоит обратить внимание и на слово «графика» на слайде, в ближайших планах корпорации интеграция на кристалл еще и простенького графического ядра класса G45. До Larrabee придется подождать, однако аналог Fusion от Intel уже готов. Отрадно, что сегодняшние технологические возможности реально позволяют выпускать настолько сложные устройства. Конечно, до 1.4 миллиардов транзисторов GT200 Nehalem пока далеко, но ведь не так давно и объединение четырех ядер на кристалле казалось невозможной задачей.

   Еще одной парой важнейших нововведений стала интеграция контроллера памяти в кристалл процессора, и, соответственно, реализация абсолютно новой шины Quick Path Interconnect вместо Quad Pumped Bus, служившей верой и правдой много лет начиная с Pentium 4 и кончая Core 2. Подробности новые технологии мы обсудим несколько позже, сейчас же стоит отметить, что обозначенные нововведения стали возможными именно благодаря модульности Nehalem. В разных вариантах CPU встроено разное количество линков QPI (по аналогии с HyperTransport, используемой AMD), в серверах для многопроцессорных конфигураций их количество будет большим по сравнению с десктопными процессорами. Рискнем предположить, что в бюджетных вариантах Nehalem Intel может отказаться и от встроенного КП памяти для экономии транзисторного бюджета. В ожидаемом Bloomfield будет присутствовать пара линков QPI и встроенный трехканальный контроллер памяти. Если подвести итог, первые процессоры семейства Core i7 будут под лучами рентгена и увеличением электронного микроскопа выглядеть так:
   Что касается диаграммы самого процессорного ядра, без различных дополнений вроде массива кэш-памяти, QPI, КП, различных внутренних I/O, то… :
   Исполнительная часть (Execution Unit) Занимает всего порядка 1/3 площади одного ядра. Примерно столько же отдано индивидуальным кэшам L1 и L2. Оставшееся место отдано блокам предсказания ветвлений и внеочередного исполнения команд.

На заметку…



    Помимо выпуска решений, направленных на планомерное увеличение производительности, Intel представляет и CPU для сегментов рынка, в которых скорость выполнения расчетов не является определяющим фактором выбора пользователей. Так, на растущем рынке нетбуков Intel Atom предлагает привлекательное сочетание достаточной, пусть и не рекордной, производительности и крайне малого энергопотребления/тепловыделения, что в результате дает длительное время автономной работы. Достичь такого компромисса помогло разумное упрощение ядра и минимизация площади кристалла. При наличии лишь 47млн. транзисторов против 781млн. у Nehalem, площадь ядра Atom менее 25кв. мм., тогда как у Bloomfield – 270кв. мм. Заметная разница, не правда ли? Конечно, при этом учитывается огромная кэш-память и целых четыре ядра Nehalem против одного у Atom, но и одно ядра Bloomfield занимает целых 88млн. транзисторов или 31 кв. мм. Если сравнивать напрямую диаграммы ядер становится понятно, как смогли получить столь малый размер Atom – все дело в строго очередном исполнении команд!
[N3-Bloomfield – отнюдь не новый Conroe]    Если сравнивать напрямую микроархитектуры Core 2 Duo и Pentium 4, можно сказать, что это буквально день и ночь. Процессоры Core не имеют почти ничего общего с NetBurst, все реализовано иначе. Для того чтобы по-настоящему воспользоваться преимуществами Pentium 4 и поучить полную отдачу от процессора, программистам требовалось проводить каждый раз огромную работу по оптимизации приложений. Однако мало кто будет специально затачивать код под аппаратную часть только одного производителя, пусть и самого крупного, если при этом на решениях конкурента скорость работы только снизится. В результате длинный конвейер P4 немалую толику времени просто простаивал, только нагревая воздух и потребляя лишнюю энергию. Инженеры усвоили урок, и Core был спроектирован так, чтобы программистам не требовалось переписывать заново огромные части программ, и уже существующий код работал быстро, причем преемственность сохранялась и для будущих архитектур. Эту традицию продолжает и Nehalem.

   Одной из фундаментальных характеристик для CPU служит возможность одновременного исполнения нескольких команд. Conroe стал первым процессором Intel, поддерживающим исполнение до четырех команд за единый такт. Зачастую такие возможности были даже избыточными, и не было никаких причин делать кардинальный редизайн ядра для того, чтобы расширить и без того беспроблемный участок. По такой здравой логике инженеры и поступили, оставив конвейер без существенных изменений:
   Приятной мелочью является расширение списка стандартных x86 микроопераций, которые могут быть объединены для совместного исполнения. Механизм такой работы чем-то напоминает MAD+MUL у NVIDIA, две команды декодируются и исполняются как одна, что в некоторых случаях позволяет существенно повысить скорость CPU.

   Так выглядит список пар команд, которые возможно объединить, добавленных к уже существующим в “старых” Core 2:
   Еще одним улучшением является то, что отныне вместе могут соединяться и 64-битные инструкции, когда ранее такая возможность была предусмотрена только в стандартном 32-битном режиме. Это вполне может дать прибавку скорости в вычислениях с удвоенной точностью. К сожалению, о количестве исполняемых команд за такт в 64-битном режиме ничего сказано не было. Видимо, как и ранее у Core2, вместо четырех полноценных команд Nehalem может обработать лишь три. Это не является серьезной проблемой, но, может создать условия для потерь производительности.

[N4-Улучшения в Loop Stream Detection]    Одним из блоков, благодаря которым Core 2 работает быстро, является Loop Stream Detector (LSD). Забавное название ничего общего с наркотиками не имеет, а означает всего-навсего невинное “обнаружение зацикленных потоков”. Эта логика контролирует исполняемый код, и, как только находится незавершающийся цикл без выхода, прерывает предсказание ветвлений, останавливая неправильные безрезультатные действия:
   В Nehalem LSD вынесли за пределы стандартных конвейерных операций, тем самым контроль над потоками осуществляется уже на основании хранящихся декодированных микроопераций, что эффективнее старого анализа еще закодированных данных. Также расширено и количество одновременно хранящихся строк кода, на основании которых LSD “делает выводы” – 28 декодированных микроопераций вместо 18 старых возможных инструкций:
[N5-Блок предсказания ветвлений и серверная направленность Nehalem]    Заметные изменения в Nehalem претерпела логика предсказания ветвлений. Отныне в процессоре данная структура представлена сложным двухуровневым механизмом. Фактически теперь иерархия этого блока похожа на организацию многоуровнего кэша современных CPU – самый быстрый и маленький – первого уровня, медленнее и больше – второго, и т.д. Причем даже значимые параметры в какой-то мере похожи на таковые у быстрой интегрированной памяти процессора – величина и скорость работы. Блок предсказания ветвлений второго уровня производит анализ по большим частям кода, чем основная логика первого уровня, однако при этом и работает медленнее.

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

   Следует заметить, что все вышеназванные усовершенствования направлены в первую очередь на улучшение работы процессора в тяжелых серверных приложениях (Intel приводит пример баз данных), где особо критичны неверное предсказание ветвлений или лишние исполненные такты, пропущенные блоком LSD. Дело в том, что уже с моменты выхода K8 позиции Intel в серверном сегменте не были однозначно убедительными, и если превосходство Core 2 в десктопном сегменте было неоспоримо, консервативные корпоративные пользователи продолжали доверять AMD, выбирая серверы на

Источник: www.anandtech.com/

подписаться   |   обсудить в ВК   |