Разработчики Core i7 заложили в него прочный технологический фундамент, частично пожертвовав производительностью в краткосрочной перспективе. Практическая ценность таких новшеств как вторая редакция технологии Hyper-Threading и тесно связанная с ней сложная иерархия кэш-памяти сегодня проявляется лишь частично. С одной стороны, в этом есть доля вины софтверных компаний, не заботящихся об оптимизации программ под многопоточные вычисления, а с другой стороны сказывается четкая серверная направленность микроархитектуры Nehalem.
Впрочем, оставим историко-философский аспект разработки Nehalem любителям околонаучных дискуссий и перейдем к непосредственному изучению Core i7. Начнем с теории и закончим практикой. Что из этого приятное, а что — полезное, решать нашим читателям.
Процессорный кристалл Core i7
Процессор Core i7 (Bloomfield, 45 нм) включает в себя: четыре физических ядра, распределенных на 8 виртуальных потоков с помощью технологии Intel Hyper-Threading, трехуровневый массив ячеек кэш-памяти, новый системный интерфейс Quick Path Interconnect, интегрированный контроллер памяти DDR3, блок очереди команд (на схеме — «Queue») и блок операций ввода-вывода («Miscellaneous I/O»). Кроме того, в структуре серверных четырехъядерников Nehalem EP найдет применение второй порт QPI для связи между двумя и более процессорами на одной материнской плате.
В отличие от Core 2 Quad — мультичипового модуля из пары Core 2 Duo, дизайн Core i7 изначально предполагает наличие четырех ядер в одном процессорном кристалле. Количество физических ядер легко варьируется в зависимости от намеченной цели. Например, во второй половине 2009 г. Intel планирует выпуск восьмиядерных CPU Nehalem EP, а вначале 2010-го — двухъядерных процессоров Havendale LGA1156 с интегрированной графикой.
Строение каждого из четырех ядер спроектировано согласно нижеприведенной схеме:
Ширина конвейера Intel Core i7, как и у представителей микроархитектуры Core 2, составляет 4 инструкции за такт. Во избежание перенасыщения очереди команд в многопоточном режиме, расширены основные буферы операций:
- reservation station (буфер резервирования операций) — с 32 до 36 μops;
- load buffers (буферы загрузки операций) — с 32 до 48 μops;
- store buffers (буферы хранения операций) — с 20 до 32 μops;
- out of order scheduling window (буфер внеочередного выполнения операций) — с 96 до 128 μops.
Intel Hyper-Threading Technology
Спустя четыре года после маловыразительного дебюта технологии Hyper-Threading (HT) в структуре настольных процессоров Pentium 4 (Northwood), специалисты Intel вернулись к концепции многопоточной обработки данных.
Эффективность HT по-прежнему зависит от конкретного приложения. Программы, использующие большой объем разнотипного кода (например, базы данных), практически идеально подходят Core i7, в тоже время основная масса игр демонстрирует 0,5-2-процентное падение фреймрейта. Впрочем, список программного обеспечения, адаптированного к особенностям Hyper-Threading, будет неуклонно расширяться.
Новая иерархия кэш-памяти, Integrated Memory Controller и Quick Path Interconnect
Встроенный контроллер оперативной памяти (IMC), разделяемый кэш третьего уровня и высокоскоростной интерфейс QPI (аналог HyperTransport) — все это было пройдено в процессорах AMD K8/K8L/K10 и теперь плавно перекочевали в ядро Bloomfield.
С переносом контроллера памяти из северного моста в тело CPU уменьшилась зависимость процессора от постоянного увеличения объема кэш-памяти. Иерархия кэша в Core i7 целиком подчинена многопоточным вычислениям: унифицированный L2 кэш урезан до 256 килобайт на каждое ядро, а основной акцент сделан на 8 МБ разделяемого кэша третьего уровня. Последний содержит все инструкции и данные из L1/L2 cache для уменьшения трафика запросов.
Ввиду того, что инженерам Intel изначально не удавалось поднять тактовую частоту Core i7 до конкурентоспособного уровня, латентность L1 кэша была увеличена по отношению к Core 2 на базе Penryn с 3 до 4 тактов. Данный маневр частично повлиял на итоговую производительность. Кэш-память второго уровня, наоборот, стала быстрее и экономичнее: вместо 15 тактов на выполнение одной операции уходит 11 тактов.
Встроенный контроллер оперативной памяти процессоров Core i7 поддерживает трехканальный (192-bit), двухканальный (128-bit) и одноканальный (64-bit) режимы работы памяти. В плане эффективности первые два смотрятся наиболее предпочтительно. Сразу отметим невозможность появления в будущем материнских плат для Core i7 со слотами DDR2: в отличие от AMD Phenom II, контроллер памяти Bloomfield поддерживает только модули стандарта DDR3.
С приходом процессоров нового поколения заканчивается эра системной шины FSB. На смену ей приходит высокоскоростной интерфейс Quick Path Interconnect (QPI):
QPI обеспечивает одновременный обмен данных в обоих направлениях (от CPU к северному мосту и от северного моста к CPU), что выгодно отличает его от Front Side Bus. Суммарная пропускная способность QPI достигает 25,6 GB/s — как минимум, в 2 раза выше, чем у FSB.
Чипсет для процессоров Core i7
Процессоры Intel Core i7 предназначены для работы с материнскими платами, оснащенными разъемом LGA1366, первые из которых будут основаны на чипсете Intel X58 Express (Tylersburg). Новый набор системной логики состоит из северного моста X58 IOH и южного моста ICH10/ICH10(R).
Материнские платы c 1366-контактным процессорным разъемом официально поддерживают модули оперативной памяти DDR3 частотой 800/1066 МГц, однако на практике Core i7 успешно взаимодействует и с более быстрыми комплектами RAM. Количество слотов DDR3 обычно варьируется от трех до шести.
Intel X58 Express программно совместим с технологиями NVIDIA SLI и ATI CrossFire. Впрочем, поддержка нескольких видеокарт GeForce связана с затратным для производителя материнских плат процессом сертификации. Так что присутствие NVIDIA SLI является лишь опцией для материнских плат премиум-класса. Подробнее о конфигурациях SLI можно прочитать в одном из наших предыдущих материалов.
Южный мост ICH10(R) сегодня широко используется в составе чипсета Intel P45 Express, поэтому его возможности хорошо известны энтузиастам.