> > > > IDF 2012: архитектура Haswell: широкие конвейеры и быстрые кэши

IDF 2012: архитектура Haswell: широкие конвейеры и быстрые кэши

Опубликовано:

idflogo2012На Форуме Intel для разработчиков появилась первая информация об архитектуре следующего поколения под кодовым названием Haswell. Одно из преимуществ нового поколения Haswell кроется в увеличении однопоточной производительности из-за улучшений архитектуры. На техническом докладе был продемонстрирован новый дизайн ядер - Intel также позволила одним глазом взглянуть на технологии энергосбережения.

Как и с любым процессором Intel, особое внимание вновь было уделено блоку предсказания ветвлений, в передней части процессора был серьёзно увеличен буфер и количество исполнительных блоков (от шести до восьми), задержки тоже были оптимизированы. Кэш получил прирост пропускной способности, но размер кэшей L1 и L2 не изменился.

Оптимизации архитектуры

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

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

Впечатляют и улучшения по пропускной способности кэша. Если размер кэша инструкций и данных L1 по-прежнему остался на уровне 32K с ассоциативностью 8-way, Intel увеличила пропускную способность чтения (Load) и записи (Store) по сравнению с Sandy Bridge с 32 байт за такт до 64 байт за такт для чтения, а также с 16 байт/такт до 32 байт/такт для записи. Кэш L2 имеет размер 256K с ассоциативностью 8-way, но его пропускная способность была увеличена для соответствия кэшу L1 до 64 байт/такт. Кроме того, в качестве важного шага Intel оптимизировала размер буфера Unified Translation Lookaside Buffer (L2 Unified TLB) до общего 4K + 2M с 1024 записями. Несмотря на все улучшения, задержки работы с кэшами остались на прежнем уровне.

Кэш последнего уровня и системный агент (System Agent) Intel тоже пересмотрела. Доступ к общему кэшу последнего уровня был расширен по пропускной способности благодаря новым выделенным конвейерам, которые могут обрабатывать запросы Data и Non Data параллельно. Что касается блока System Agent, то новый блок Load Balancer может выделять ресурсы более эффективно. Даже пропускная способность записи DRAM была ускорена благодаря улучшенному блоку диспетчеризации и улучшенной работе с очередями. При этом особое внимание было уделено снижению энергопотребления, в том числе и в режиме бездействия.

Ещё одной функцией новой архитектуры Intel можно назвать технологию TSX с Lock Elision. Кроме того, Intel ещё раз увеличила скорость операций Roundtrip при виртуализации VT-X, теперь она составляет меньше 500 тактов на Roundtrip.

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

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

Ещё одной функцией является новое состояние энергопотребления (Power State) в режиме C7. Все тактовые импульсы прекращаются, напряжение с основной части CPU снимается - даже если дисплей остаётся активным. Время пробуждения из состояния C7 и переключения в другие C-состояния Intel удалось ускорить на 25%. С новыми состояниями бездействия для планшетов (S0ix) и новыми C-состояниями процессор ещё сильнее снижает энергопотребление - всё это позволяет существенно уменьшить энергопотребление в режиме бездействия по сравнению с Ivy Bridge.

Кроме того, Intel выделила отдельный домен энергопотребления для графического ядра - если учитывать CPU и System Agent, то перед нами третий домен энергопотребления. Intel может управлять напряжениями CPU, чтобы выдавать только требуемую производительность - это позволяет как снизить энергопотребление в активном режиме, так и повысить тактовые частоты или перейти на новые режимы Turbo.

Все эти изменения объясняют, почему в демонстрации Haswell потреблял всего 8 Вт: графическое ядро было активным, но многие другие области CPU Intel были выключены.