Страница 3: Intel Core i7-5960X | Haswell-E в деталях (2)

Позвольте на мгновение вернуться к "Ivy Bridge": по сравнению с "Sandy Bridge" у "Ivy Bridge" не было существенных изменений в архитектуре CPU, поскольку "Ivy Bridge" был "тиком" в номенклатуре "тик-так", с ним Intel переходила на новый техпроцесс. В любом случае, 22-нм техпроцесс с транзисторами Tri-Gate позволил уместить на CPU на 400 млн. транзисторов больше, именно по этой причине Intel часто называет переход "тик+". Но добавленные транзисторы, в том числе, касались и обновлённого графического ядра "Ivy Bridge". Intel также изменила структуру контроллера памяти и некоторых других областей CPU.

По этой причине изменения в архитектурах "Haswell" и "Haswell-E" логично сравнивать с "Sandy Bridge". Впервые Intel упомянула новую архитектуру "Haswell" на форуме Intel Developer Forum (IDF) в сентябре 2012 в Сан-Франциско. Но в конечном итоге Intel всё же придерживалась базовой структуры "Sandy Bridge":

ringbus
Кольцевая шина была впервые представлена с архитектурой "Sandy Bridge" для усиления интегрированной графики. В "Ivy Bridge" она перешла в неизменном виде. То же самое можно сказать про "Haswell" и "Haswell-E".

Изменения в ядрах

Новые процессоры "Haswell-E" базируются на хорошо известной архитектуре "Haswell", поэтому их вполне логично сравнивать с "младшими" моделями. Больших изменений не произошло, за исключением контроллера памяти, кэша и числа ядер.

В сентябре 2012 года Intel впервые поделилась информацией об архитектуре Haswell. Что интересно, было объявлено об увеличении однопоточной производительности. Для этой цели в ядра Haswell были внесены некоторые улучшения. Как и в случае многих процессоров Intel, они касаются доработки блока предсказания ветвлений, оптимизации передней части конвейера процессора, увеличения буферов, а также в снижении задержек. Произошли и некоторые оптимизации кэшей, но размер кэшей L1 и L2 не изменился.

Intel с помощью увеличения размера буферов смогла достичь лучшего распараллеливания нагрузок. "Haswell" и "Haswell-E" по сравнению с предшествующими архитектурами получили большие буферы почти во всех областях (Out-of-Order Window, In-Flight Loads, In-Flight Stores, Scheduler Entries, Integer Register Files, FP Register Files, Allocation Queues). При этом Intel учитывала и эффективность, чтобы буфер всегда заполнялся актуальным данными и не устаревал - неиспользуемый буфер приводит к пустым тратам энергии, а также не обеспечивает прирост производительности.

Также Intel добавила два блока Fused-Multiply-Add для инструкций AVX, два дополнительных порта к четвёртому целочисленному АЛУ, второй блок предсказания ветвлений и блок хранения адресов. Что касается конвейера, то Intel его сохранила прежним и не расширяла. С подобными небольшими изменениями конвейер имеет много общего с предыдущим дизайном Sandy Bridge (и, в принципе, даже с Pentium Pro, если угодно). Размер окна внеочередного выполнения (Out-of-Order Window) был увеличен до 192 записей, в отличие от 168 записей у Sandy Bridge. Также и станция резервирования (Reservation Station) теперь может вмещать 60 записей вместо 54. Блок исполнения Execution Unit 7 освободил два порта загрузки/записи 2 и 3 для выделенного блока хранения адресов. Intel также увеличила количество физических регистров, сейчас в процессоре используются 168 записей для регистров с плавающей точкой вместо 144 записей раньше. Целочисленные регистры тоже были увеличены со 160 записей до 168. В качестве существенного улучшения Intel также оптимизировала размер унифицированного буфера TLB (L2 Unified TLB) до 4K + 2M с 1024 записями вместо 512 у Sandy Bridge. Для Intel было важно сохранить прежнюю длину конвейера и низкую задержку обращений в кэш.

Новый набор инструкций: Advanced Vector Extensions 2

Ещё одна новая функция "Haswell" и "Haswell-E" кроется в наборе инструкций Advanced Vector Extensions 2 (Intel AVX2). Набор инструкций, помимо всего прочего, поддерживает 256-битные целочисленные векторы и операции Fused Multiply-Add (два блока для AVX). В результате Intel смогла заявить об удвоении выполняемых операций с плавающей запятой за такт у Haswell. У приложений, оптимизированных под AVX2, мы можем ожидать существенного увеличения производительности. Целочисленные инструкции нацелены, главным образом, на индексирование и хэширование, криптографию и Endian Conversion (MOVBE). Кроме того, с операцией Fused Multiply-Add результаты вычислений должны быть более точными, так как мы вместо двух операций округления раньше получаем только одну.

Повышение пропускной способности кэша и другие улучшения

Пропускная способность кэша заметно увеличилась. Размеры кэшей L1 для инструкций и данных по-прежнему фиксированы на уровне 32K, как 8-канальный ассоциативный режим, но Intel повысила пропускную способность считывания/записи с 32 байт на такт у Sandy Bridge до 64 байт на такт для считывания, с 16 байт/такт до 32 байт/так для записи. Кэш L2 по-прежнему имеет объём 256 кбайт и 8-канальный ассоциативный режим, пропускная способность кэша L1 составляет 64 байт/такт.

Intel доработала кэш последнего уровня и System Agent. Среди всего прочего, большая пропускная способность общего кэша последнего уровня достигается с помощью новых выделенных конвейеров, которые могут параллельно обрабатывать запросы для данных и не-данных. В случае системного агента реализован новый блок Load Balancer, который может выделять ресурсы более эффективно. Также пропускная способность записи DRAM ускоряется благодаря лучшей диспетчеризации очереди. Наконец, Intel вновь существенно ускорила работу операций Roundtrip в случае использования виртуализации VT-x, сейчас на выполнение операций Roundtrip тратится меньше 500 тактов.

Intel Transactional Synchronization Extension (TSX) и Lock Elision

Многоядерные процессоры всегда должны работать с актуальными данными, поэтому возникают так называемые блокировки (Lock). Если к памяти обращаются несколько потоков, то соответствующая область блокируется (Lock), чтобы предотвратить изменение данных во время их обработки другим потоком. Благодаря такому принципу каждое ядро получает корректный результат, поскольку данные всегда актуальны. Но в обычных ситуациях подобные блокировки, добавляющие задержку, бывают избыточны, так как разные потоки редко обращаются к одной и той же области памяти. Но для обхода данной ситуации у Haswell теперь появилась технология TSX и транзакционная память (Transactional Memory): доступ к памяти теперь может выполняться без блокировки, что позволяет быстрее обрабатывать данные с загрузкой в кэш L1. Но также должен существовать аппаратный механизм, который определяет одновременный доступ и отменяет вычисления.

"Haswell" и "Haswell-E" обладают двумя такими механизмами. Аппаратная технология Lock Elision работает по описанному выше принципу и вновь просчитывает прежний код, учитывая конфликтные блокировки. Механизм Restricted Transactional Memory сообщает крах программному обеспечению, которое может самостоятельно решать, следует ли ему работать с учетом блокировок или повторить транзакцию позднее. Оба механизма работают на уровне кэша L1 в CPU, но Haswell также может менять поддиапазоны в кэше L2.

Оптимизация энергопотребления

Intel существенно продвинулась вперёд по оптимизации энергопотребления, в кристалле можно отключать буквально всё, что не требуется. Интересно, что ядра теперь отделены от кольца Intel LLC+Ring, причём каждое относится к своему домену частоты. Всё это позволяет более тонко регулировать тактовые частоты. Также блок Power Control Unit динамически проверяет соответствие тепловому пакету TDP или бюджету, если задан предельный уровень.

Новый режим энергосбережения "S0ix Active Idle"

У Intel "Haswell" и "Haswell-E" не появились новые режимы энергосбережения. Но добавились новые функции Power State в режиме C7. В нём все тактовые импульсы прекращаются, напряжение с основной части CPU снимается - даже если дисплей по-прежнему активен. У современных ультрабуков для этой задачи использовуется режим автообновления экрана Self Panel Refresh (SPR), что позволяет выводить на дисплей картинку даже в режиме C7. Время пробуждения из режима C7 и переключения на другие C-режимы Intel удалось уменьшить на 25%.

С новыми режимами бездействия S0ix Active Idle и с более продуманными C-состояниями Intel удалось снизить энергопотребление ещё сильнее - поэтому по сравнению с Ivy Bridge мы получили заметно меньшее энергопотребление в режиме бездействия. В режиме S0ix Active Idle энергопотребление компьютера снижается до уровня режимов S3/S4, но без длительного времени пробуждения. Intel аппаратно реализовала упомянутый режим с тонкими градациями переходов. Из-за общего ускорения перехода между C-состояниями на 25% и новыми режимами управления энергопотреблением для периферии, процессор будет быстрее переключаться между C-состояниями.

В частности, Intel существенно снизила время перехода между режимом бездействия и активностью процессора. Поддержка S0ix позволяет экономить энергию на уровне платформы.
В частности, Intel существенно снизила время перехода между режимом бездействия и активностью процессора. Поддержка S0ix позволяет экономить энергию на уровне платформы.

System Agent (ранее Uncore)

Системный агент (System Agent) в CPU тоже получил некоторые оптимизации, касающиеся технологий энергосбережения, но в остальном изменений немного, за исключением контроллера памяти.

Контроллер памяти

Одно из основных изменений "Haswell-E" кроется в контроллере памяти. У старых процессоров "Ivy Bridge-E" контроллер памяти DDR3 работал на частоте до 1866 МГц, новые процессоры поддерживают память DDR4. Штатно модули памяти могут работать на частоте 2133 МГц. Но с помощью других делителей можно использовать и более скоростную память. На данный момент идёт разговор о комплектах памяти с частотой до 3.200 МГц.

По числу каналов изменений не произошло. Новые планки памяти работают в 4-канальном режиме, по сравнению с "Haswell" или "Haswell Refresh" мы получаем существенно большую пропускную способность и объём. Многие материнские платы X99 поддерживают до 64 Гбайт памяти в восьми банках. Такой объём памяти заявлен максимальным, здесь по сравнению с "Ivy Bridge-E" изменений не произошло. Но многие производители материнских плат, те же ASRock и EVGA, также указывают на то, что их материнские платы могут оснащаться до 128 Гбайт памяти. Также из новшеств можно отметить поддержку профилей XMP в версии 2.0. Два предыдущих поколения поддерживали только версию 1.3.

Интерфейс PCI Express

Опять же, ничего принципиального нового у Intel Haswell/Haswell-E нет: процессоры Ivy Bridge уже получили обновление до версии PCI Express 3.0, данный стандарт остаётся актуальным, скорость передачи составляет 8 GT/s на линию PCIe, а именно 984 Мбайт/с. В случае подключений x16 PCIe 3.0 мы получаем теоретическую пропускную способность 16 Гбайт/с в одном направлении или до 32 Гбайт/с в двух направлениях.

Direct Media Interface

Связь между CPU и чипсетом (X99) у новой платформы Intel не изменилась. Мы по-прежнему получаем интерфейс DMI 2.0 x4. Чипсет Platform Controller Hub подключается с пропускной способностью 5 GT/s или 4 Гбайт/с. Честно говоря, мы не понимаем, почему Intel не выбрала более скоростное подключение, поскольку за последние годы выросло количество портов USB 3.0 и SATA 6G, которые косвенно подключаются к процессору. Всё это может привести к тому, что шина DMI станет "узким местом". У нового чипсета Intel поддерживается большое количество портов USB 3.0 и SATA 6G, но, вероятно, компания считает, что 4 Гбайт/с хватит на все.