От Sandy Bridge до Coffee Lake: сравниваем семь поколений Intel Core i7. Процессоры Sandy Bridge

Практически всегда под любой публикацией, в которой так или иначе затрагивается тема производительности современных интеловских процессоров, рано или поздно появляется несколько сердитых читательских комментариев о том, что прогресс в развитии чипов у Intel давно забуксовал и нет смысла переходить со «старого доброго Core i7-2600K» на что-то новое. В таких репликах, скорее всего, будет раздражённо упоминаться про прирост производительности на неосязаемом уровне «не более пяти процентов в год»; про низкокачественный внутренний термоинтерфейс, который непоправимо испортил современные процессоры Intel; либо про то, что покупать в современных условиях процессоры с таким же, как и несколько лет назад, количеством вычислительных ядер вообще - удел недальновидных дилетантов, так как в них нет необходимого задела на будущее.

В том, что все такие реплики не лишены оснований, сомнений нет. Однако очень похоже, что они многократно преувеличивают имеющиеся проблемы. Лаборатория 3DNews подробно тестирует интеловские процессоры с 2000 года, и мы не можем согласиться с тезисом, что какому бы то ни было их развитию пришёл конец, а происходящее с микропроцессорным гигантом в течение последних лет иначе как стагнацией уже и не назовёшь. Да, какие-то кардинальные перемены с процессорами Intel происходят редко, но тем не менее они продолжают планомерно совершенствоваться. Поэтому те чипы серии Core i7, которые можно купить сегодня, заведомо лучше моделей, предлагавшихся несколько лет тому назад.

Поколение Core Кодовое имя Техпроцесс Этап разработки Время выхода
2 Sandy Bridge 32 нм Так (Архитектура) I кв. 2011
3 Ivy Bridge 22 нм Тик (Процесс) II кв. 2012
4 Haswell 22 нм Так (Архитектура) II кв. 2013
5 Broadwell 14 нм Тик (Процесс) II кв. 2015
6 Skylake 14 нм Так
(Архитектура)
III кв. 2015
7 Kaby Lake 14+ нм Оптимизация I кв. 2017
8 Coffee Lake 14++ нм Оптимизация IV кв. 2017

Собственно, этот материал как раз и является контраргументом для рассуждений о никчёмности выбранной Intel стратегии постепенного развития потребительских CPU. Мы решили собрать в одном тесте старшие интеловские процессоры для массовых платформ за последние семь лет и посмотреть на практике, насколько представители серий Kaby Lake и Coffee Lake ушли вперёд относительно «эталонных» Sandy Bridge, которые за годы гипотетических сравнений и мысленных противопоставлений в представлении обывателей стали настоящей иконой процессоростроения.

⇡ Что поменялось в процессорах Intel c 2011 года по настоящее время

Отправной точкой в новейшей истории развития процессоров Intel принято считать микроархитектуру Sandy Bridge . И это неспроста. Несмотря на то, что первое поколение процессоров под маркой Core было выпущено в 2008 году на базе микроархитектуры Nehalem, почти все основные черты, которые присущи современным массовым CPU микропроцессорного гиганта, вошли в обиход не тогда, а парой лет позднее, когда распространение получило следующее поколение процессорного дизайна, Sandy Bridge.

Сейчас компания Intel приучила нас к откровенно неторопливому прогрессу в разработке микроархитектуры, когда нововведений стало очень мало и они почти не приводят к росту удельной производительности процессорных ядер. Но всего лишь семь лет назад ситуация была кардинально иной. В частности, переход от Nehalem к Sandy Bridge был ознаменован 15-20-процентным ростом показателя IPC (числа исполняемых за такт инструкций), что обуславливалось глубокой переделкой логической конструкции ядер с прицелом на повышение их эффективности.

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

Но, пожалуй, самым главным нововведением стало то, что Sandy Bridge был спроектирован как унифицированная система-на-чипе, рассчитанная одновременно на все классы применений: на серверные, десктопные и мобильные. Скорее всего, в прадедушки современных Coffee Lake общественное мнение поставило именно его, а не какой-нибудь Nehalem и уж тем более не Penryn, именно из-за этой особенности. Впрочем, и итоговая сумма всех переделок в глубинах микроархитектуры Sandy Bridge тоже оказалась весьма значительной. В конечном итоге этот дизайн утратил все старые родственные связи с P6 (Pentium Pro), которые то здесь, то там проявлялись во всех предшествующих процессорах Intel.

Говоря об общей структуре, нельзя также не вспомнить и о том, что в процессорный кристалл Sandy Bridge впервые в истории интеловских CPU было встроено полноценное графическое ядро. Этот блок отправился внутрь процессора вслед за контроллером DDR3-памяти, разделяемым L3-кешем и контроллером шины PCI Express. Для соединения вычислительных ядер и всех остальных «внеядерных» частей инженеры Intel внедрили в Sandy Bridge новую на тот момент масштабируемую кольцевую шину, применяемую для организации взаимодействия между структурными единицами в последующих массовых CPU и по сей день.

Если же опуститься на уровень микроархитектуры Sandy Bridge, то одной из ключевых её особенностей стала поддержка семейства SIMD-инструкций, AVX, предназначенных для работы с 256-битными векторами. К настоящему моменту такие инструкции прочно вошли в обиход и не кажутся чем-то необычным, но их реализация в Sandy Bridge потребовала расширения части вычислительных исполнительных устройств. Инженеры Intel стремились сделать работу с 256-битными данными такой же быстрой, как и с векторами меньшей разрядности. Поэтому вместе с реализацией полноценных 256-битных исполнительных устройств потребовалось и увеличение скорости работы процессора с памятью. Логические исполнительные устройства, предназначенные для загрузки и сохранения данных, в Sandy Bridge получили удвоенную производительность, кроме того, симметрично была увеличена пропускная способность кеш-памяти первого уровня при чтении.

Нельзя не упомянуть и о сделанных в Sandy Bridge кардинальных изменениях в работе блока предсказания ветвлений. Благодаря оптимизациям в применяемых алгоритмах и увеличению размеров буферов, архитектура Sandy Bridge позволила сократить процент неверных предсказаний переходов почти вдвое, что не только заметно сказалось на производительности, но и позволило дополнительно снизить энергопотребление этого дизайна.

В конечном итоге с сегодняшних позиций процессоры Sandy Bridge можно было бы назвать образцово-показательным воплощением фазы «так» в интеловском принципе «тик-так». Как и предшественники, данные процессоры продолжили базироваться на техпроцессе с 32-нм нормами, но предложенный ими рост производительности оказался более чем убедителен. И подпитывала его не только обновлённая микроархитектура, но и увеличенные на 10-15 процентов тактовые частоты, а также внедрение более агрессивной версии технологии Turbo Boost 2.0. Если учесть всё это, хорошо понятно, почему многие энтузиасты до сих пор вспоминают Sandy Bridge самыми тёплыми словами.

Старшим предложением в семействе Core i7 на момент выхода микроархитектуры Sandy Bridge стал Core i7-2600K. Этот процессор получил тактовую частоту на уровне 3,3 ГГц с возможностью авторазгона при неполной нагрузке до 3,8 ГГц. Впрочем, отличали 32-нм представителей Sandy Bridge не только сравнительно высокие для того времени тактовые частоты, но и хороший разгонный потенциал. Среди Core i7-2600K нередко можно было встретить экземпляры, способные работать на частотах 4,8-5,0 ГГц, что во многом обуславливалось применением в них качественного внутреннего термоинтерфейса - бесфлюсового припоя.

Через девять месяцев после выпуска Core i7-2600K, в октябре 2011 года, компания Intel обновила старшее предложение в модельном ряду и предложила немного ускоренную модель Core i7-2700K, номинальная частота которой была доведена до 3,5 ГГц, а максимальная частота в турборежиме - до 3,9 ГГц.

Впрочем, жизненный цикл Core i7-2700K оказался коротким - уже в апреле 2012 года на смену Sandy Bridge пришёл обновлённый дизайн Ivy Bridge . Ничего особенного: Ivy Bridge относился к фазе «тик», то есть представлял собой перевод старой микроархитектуры на новые полупроводниковые рельсы. И в этом отношении прогресс действительно был серьёзным - кристаллы Ivy Bridge производились по 22-нм технологическому процессу, основанному на трёхмерных FinFET-транзисторах, которые в то время только входили в употребление.

При этом старая микроархитектура Sandy Bridge на низком уровне осталась практически нетронута. Были выполнены лишь отдельные косметические переделки, которые ускорили выполнение в Ivy Bridge операций деления и немного повысили эффективность технологии Hyper-Threading. Правда, попутно были несколько улучшены «внеядерные» компоненты. Контроллер PCI Express получил совместимость с третьей версией протокола, а контроллер памяти увеличил свои возможности и стал поддерживать скоростную оверклокерскую DDR3-память. Но в итоге рост удельной производительности при переходе от Sandy Bridge к Ivy Bridge составил не более 3-5 процентов.

Не дал серьёзных причин для радости и новый технологический процесс. К сожалению, внедрение 22-нм норм не позволило как-то принципиально нарастить тактовые частоты Ivy Bridge. Старшая версия Core i7-3770K получила номинальную частоту 3,5 ГГц с возможностью разгона в турборежиме до 3,9 ГГц, то есть с точки зрения частотной формулы она оказалась ничуть не быстрее Core i7-2700K. Улучшилась лишь энергоэффективность, однако пользователей настольных компьютеров этот аспект традиционно волнует слабо.

Всё это, конечно, вполне можно списать на то, что на этапе «тик» никаких прорывов происходить и не должно, но кое в чём Ivy Bridge оказались даже хуже предшественников. Речь - о разгоне. При выводе на рынок носителей этого дизайна Intel приняла решение отказаться от использования при финальной сборке процессоров бесфлюсовой пайки галлиевым припоем теплораспределительной крышки к полупроводниковому кристаллу. Начиная с Ivy Bridge для организации внутреннего термоинтерфейса стала использоваться банальная термопаста, и это сразу же ударило по максимально достижимым частотам. По разгонному потенциалу Ivy Bridge определённо стали хуже, и в результате переход от Sandy Bridge к Ivy Bridge стал одним из самых спорных моментов в новейшей истории потребительских процессоров Intel.

Поэтому на следующий этап эволюции, Haswell , возлагались особенные надежды. В этом поколении, относящемся к фазе «так», должны были появиться серьёзные микроархитектурные улучшения, от которых ожидалась способность как минимум продвинуть вперёд забуксовавший было прогресс. И в какой-то степени это произошло. Появившиеся летом 2013 года процессоры Core четвёртого поколения действительно приобрели заметные улучшения во внутренней структуре.

Основное: теоретическая мощность исполнительных устройств Haswell, выражающаяся в количестве исполняемых за такт микроопераций, по сравнению с прошлыми CPU выросла на треть. В новой микроархитектуре не только был проведён ребаланс имеющихся исполнительных устройств, но и появилось два дополнительных исполнительных порта для целочисленных операций, обслуживания ветвлений и генерации адресов. Кроме того, микроархитектура получила совместимость с расширенным набором векторных 256-битных инструкций AVX2, которые благодаря трёхоперандным FMA-командам увеличили пиковую пропускную способность архитектуры вдвое.

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

Казалось бы, перечисленных улучшений должно быть достаточно для того, чтобы заметно поднять удельную производительность новой микроархитектуры. Но как бы не так. Проблема дизайна Haswell состояла в том, что он оставил без изменений входную часть исполнительного конвейера и декодер x86-команд сохранил ту же производительность, что и раньше. То есть максимальный темп декодирования x86-кода в микроинструкции остался на уровне 4-5 команд за такт. И в результате при сопоставлении Haswell и Ivy Bridge на одинаковой частоте и при нагрузке, не использующей новые AVX2-инструкции, выигрыш в производительности оказался всего лишь на уровне 5-10 процентов.

Имидж микроархитектуры Haswell подпортила и первая волна процессоров, выпущенная на её основе. Опираясь на всё тот же 22-нм техпроцесс, что и Ivy Bridge, новинки не смогли предложить высокие частоты. Например, старший Core i7-4770K вновь получил базовую частоту 3,5 ГГц и максимальную частоту в турборежиме на уровне 3,9 ГГц, то есть по сравнению с прошлыми поколениями Core никакого продвижения не наметилось.

В то же время с внедрением следующего технологического процесса с 14-нм нормами у Intel стали возникать разного рода трудности, поэтому через год, летом 2014 года, на рынок было выведено не следующее поколение процессоров Core, а вторая очередь Haswell, которая получила кодовые имена Haswell Refresh, или, если говорить о флагманских модификациях, то Devil’s Canyon. В рамках этого обновления Intel смогла заметно увеличить тактовые частоты 22-нм CPU, что действительно вдохнуло в них новую жизнь. В качестве примера можно привести новый старший процессор Core i7-4790K, который по номинальной частоте взял отметку в 4,0 ГГц и получил максимальную частоту с учётом турборежима на уровне 4,4 ГГц. Удивительно, что подобное полугигагерцевое ускорение было достигнуто без каких-либо реформ техпроцесса, а лишь за счёт простых косметических изменений в схеме питания процессоров и благодаря улучшению теплопроводящих свойств термопасты, используемой под крышкой CPU.

Впрочем, даже представители семейства Devil’s Canyon особенно жалуемыми в среде энтузиастов предложениями стать не смогли. На фоне результатов Sandy Bridge их разгон нельзя было назвать выдающимся, к тому же достижение высоких частот требовало сложного «скальпирования» - демонтажа процессорной крышки с последующей заменой штатного термоинтерфейса каким-либо материалом с лучшей теплопроводностью.

Из-за сложностей, которые преследовали Intel при переводе массового производства на 14-нм нормы, выступление следующего, пятого по счёту поколения процессоров Core, Broadwell , получилось сильно скомканным. Компания долго не могла решить, стоит ли вообще выпускать на рынок десктопные процессоры с этим дизайном, поскольку при попытках изготовления крупных полупроводниковых кристаллов уровень брака превышал приемлемые значения. В конечном итоге предназначенные для настольных компьютеров четырёхъядерники Broadwell всё-таки появились, но, во-первых, произошло это лишь летом 2015 года - с девятимесячным опозданием относительно изначально запланированного срока, а во-вторых, уже через два месяца после их анонса Intel представила дизайн следующего поколения, Skylake.

Тем не менее с точки зрения развития микроархитектуры Broadwell трудно назвать вторичной разработкой. И даже более того, в настольных процессорах этого поколения применялись такие решения, к которым ни до того, ни после того Intel никогда не прибегала. Уникальность десктопных Broadwell определялась тем, что в них проникло производительное интегрированное графическое ядро Iris Pro уровня GT3e. И это значит не только то, что процессоры этого семейства обладали самым мощным на тот момент встроенным видеоядром, но и также то, что они комплектовались дополнительным 22-нм кристаллом Crystall Well, представляющим собой основанную на eDRAM кеш-память четвёртого уровня.

Смысл добавления в процессор отдельного чипа быстрой встроенной памяти вполне очевиден и обусловлен потребностями производительного встроенного графического ядра в фрейм-буфере с низкой латентностью и высокой пропускной способностью. Однако установленная в Broadwell память eDRAM архитектурно была выполнена именно как виктимный кеш, и ей могли пользоваться и вычислительные ядра CPU. В результате десктопные Broadwell стали единственными в своём роде массовыми процессорами с 128 Мбайт L4-кеша. Правда, при этом несколько пострадал объём расположенного в процессорном кристалле L3-кеша, который был сокращён с 8 до 6 Мбайт.

Некоторые улучшения были заложены и в базовой микроархитектуре. Несмотря на то, что Broadwell относился к фазе «тик», переделки коснулись входной части исполнительного конвейера. Было увеличено окно планировщика внеочередного исполнения команд, в полтора раза вырос объём таблицы ассоциативной трансляции адресов второго уровня, а, кроме того, вся схема трансляции приобрела второй обработчик промахов, что позволило обрабатывать по две операции преобразования адресов параллельно. В сумме все нововведения повысили эффективность внеочередного исполнения команд и предсказания сложных ветвлений кода. Попутно были усовершенствованы механизмы выполнения операций умножения, которые в Broadwell стали обрабатываться в существенно более быстром темпе. По итогам всего этого Intel даже смогла утверждать, что улучшения микроархитектуры повысили удельную производительность Broadwell по сравнению с Haswell на величину порядка пяти процентов.

Но несмотря на всё это, ни о каком существенном преимуществе первых десктопных 14-нм процессоров вести речь было невозможно. И кеш четвёртого уровня, и микроархитектурные изменения лишь пытались скомпенсировать главный изъян Broadwell - низкие тактовые частоты. Из-за проблем с технологическим процессом базовая частота старшего представителя семейства, Core i7-5775C, была установлена лишь на уровне 3,3 ГГц, а частота в турборежиме не превышала 3,7 ГГц, что оказалось хуже характеристик Devil’s Canyon на целых 700 МГц.

Подобная же история произошла и с разгоном. Предельные частоты, до которых удавалось раскочегаривать десктопные Broadwell без использования продвинутых методов охлаждения, находились в районе 4,1-4,2 ГГц. Поэтому нет ничего удивительного, что потребители восприняли выпуск Broadwell скептически, и процессоры этого семейства так и остались странным нишевым решением для тех, кто был заинтересован в производительном встроенном графическом ядре. Первым же полноценным 14-нм чипом для настольных компьютеров, который смог привлечь к себе внимание широких слоёв пользователей, стал только следующий проект микропроцессорного гиганта - Skylake .

Производство Skylake, как и процессоров предыдущего поколения, выполнялось по 14-нм техпроцессу. Однако здесь Intel уже смогла добиться нормальных тактовых частот и разгона: старшая десктопная версия Skylake, Core i7-6700K, получила номинальную частоту 4,0 ГГц и авторазгон в рамках турборежима до 4,2 ГГц. Это чуть более низкие значения, если сравнивать с Devil’s Canyon, однако более новые процессоры оказались определённо быстрее предшественников. Дело в том, что Skylake - это «так» в интеловской номенклатуре, что означает существенные изменения в микроархитектуре.

И они действительно есть. Улучшений в дизайне Skylake на первый взгляд было сделано не так много, но все они носили прицельный характер и позволили устранить имевшиеся слабые места в микроархитектуре. Если коротко, то Skylake получили увеличенные внутренние буфера для более глубокого внеочередного исполнения инструкций и более высокую пропускную способность кеш-памяти. Усовершенствования затронули блок предсказания переходов и входную часть исполнительного конвейера. Также был увеличен темп исполнения инструкций деления, и перебалансированы механизмы исполнения операций сложения, умножения и FMA-инструкций. В довершение разработчики потрудились над повышением эффективности технологии Hyper-Threading. В сумме это позволило добиться примерно 10-процентного улучшения производительности на такт в сравнении с процессорами прошлых поколений.

В целом Skylake можно охарактеризовать как достаточно глубокую оптимизацию исходной архитектуры Core, с таким расчётом, чтобы в дизайне процессора не оставалось никаких узких мест. С одной стороны, за счёт увеличения мощности декодера (с 4 до 5 микроопераций за такт) и скорости работы кеша микроопераций (с 4 до 6 микроопераций за такт) существенно увеличился темп декодирования инструкций. А с другой - выросла эффективность обработки получающихся микроопераций, чему поспособствовало углубление алгоритмов внеочередного исполнения и перераспределение возможностей исполнительных портов вместе с серьёзной ревизией темпа исполнения целого ряда обычных, SSE и AVX-команд.

Например, Haswell и Broadwell имели по два порта для исполнения умножений и FMA-операций над вещественными числами, но только один порт предназначался для сложений, что плохо соответствовало реальному программному коду. В Skylake этот дисбаланс был устранён и сложения стали выполняться уже на двух портах. Кроме того, количество портов, способных работать с целочисленными векторными инструкциями, выросло с двух до трёх. В конечном итоге всё это привело к тому, что практически для любого типа операций в Skylake всегда есть несколько альтернативных портов. А это значит, что в микроархитектуре наконец были успешно устранены практически все возможные причины простоя конвейера.

Заметные изменения затронули и подсистему кеширования: пропускная способность кеш-памяти второго и третьего уровня была увеличена. Кроме того, сократилась ассоциативность кеша второго уровня, что в конечном счёте позволило улучшить его КПД и уменьшить штраф при обработке промахов.

Существенные перемены произошли и на более высоком уровне. Так, в Skylake вдвое выросла пропускная способность кольцевой шины, которая соединяет все процессорные блоки. Кроме того, в CPU этого поколения обосновался новый контроллер памяти, который получил совместимость с DDR4 SDRAM. А в дополнение к этому для соединения процессора с чипсетом стала применяться новая шина DMI 3.0 с увеличенной вдвое пропускной способностью, что дало возможность реализовать скоростные линии PCI Express 3.0 в том числе и через чипсет.

Впрочем, как и все предшествующие версии архитектуры Core, Skylake представлял собой ещё одну вариацию на тему изначального дизайна. А это значит, что и в шестом поколении микроархитектуры Core разработчики Intel продолжили придерживаться тактики поэтапного внедрения улучшений на каждом цикле разработки. В целом это - не слишком впечатляющий подход, который не позволяет увидеть какие-то значимые изменения в производительности сразу - при сравнении CPU из соседних поколений. Но зато при модернизации старых систем ощутимый прирост производительности заметить совсем несложно. Например, сама Intel охотно сравнивала Skylake с Ivy Bridge, демонстрируя при этом, что за три года быстродействие процессоров выросло более чем на 30 процентов.

И в действительности это был достаточно серьёзный прогресс, потому что потом всё стало значительно хуже. После Skylake какое бы то ни было улучшение удельной производительности процессорных ядер прекратилось совсем. Те процессоры, которые представлены на рынке в настоящее время, всё ещё продолжают использовать микроархитектурный дизайн Skylake, несмотря на то, что с момента его появления в десктопных процессорах прошло уже почти три года. Неожиданный простой случился из-за того, что Intel не смогла справиться со внедрением следующей версии полупроводникового процесса с 10-нм нормами. В результате весь принцип «тик-так» рассыпался, вынудив микропроцессорного гиганта как-то выкручиваться и заниматься многократным перевыпуском старых продуктов под новыми именами.

Процессоры поколения Kaby Lake , которые появились на рынке в самом начале 2017 года, стали первым и очень ярким примером попыток Intel продать клиентам тот же Skylake во второй раз. Близкие родственные связи между двумя поколениями процессоров особо и не скрывались. Intel честно говорила, что Kaby Lake - это уже не «тик» и не «так», а простая оптимизация предыдущего дизайна. При этом под словом «оптимизация» понимались некие улучшения в структуре 14-нм транзисторов, которые открывали возможность увеличения тактовых частот без изменения рамок теплового пакета. Для видоизменённого техпроцесса был даже придуман специальный термин «14+ нм». Благодаря этой производственной технологии старший массовый десктопный процессор Kaby Lake, получивший наименование Core i7-7700K, смог предложить пользователям номинальную частоту 4,2 ГГц и частоту турборежима 4,5 ГГц.

Таким образом, рост частот Kaby Lake по сравнению с оригинальным Skylake составил примерно 5 процентов, и этим всё и ограничивалось, что, честно говоря, ставило под сомнение правомерность отнесения Kaby Lake к следующему поколению Core. До этого момента каждое последующее поколение процессоров, не важно, относилось оно к фазе «тик» или «так», обеспечивало хоть какой-то прирост показателя IPC. Между тем в Kaby Lake никаких микроархитектурных улучшений не было вообще, поэтому эти процессоры логичнее было бы считать просто вторым степпингом Skylake.

Однако новая версия 14-нм техпроцесса всё же смогла кое в чём положительно проявить себя: разгонный потенциал Kaby Lake по сравнению с Skylake подрос примерно на 200-300 МГц, благодаря чему процессоры данной серии оказались достаточно тепло встречены энтузиастами. Правда, Intel продолжила использовать под процессорной крышкой вместо припоя термопасту, поэтому для полноценного разгона Kaby Lake необходимо было проводить скальпирование.

Не справилась Intel и с вводом в строй 10-нм технологии и к началу текущего года. Поэтому в конце прошлого года на рынок была выведена ещё одна разновидность процессоров, построенных на всё той же микроархитектуре Skylake, - Coffee Lake . Но говорить о Coffee Lake как о третьем обличье Skylake не совсем правильно. Прошлый год стал периодом кардинальной смены парадигмы на процессорном рынке. В «большую игру» вернулась AMD, которая смогла переломить устоявшиеся традиции и создать спрос на массовые процессоры с числом ядер более четырёх. Внезапно Intel оказалась в роли догоняющей, и выход Coffee Lake стал не столько попыткой заполнить паузу до долгожданного появления 10-нм процессоров Core, сколько реакцией на выход шести- и восьмиядерных процессоров AMD Ryzen.

В результате процессоры Coffee Lake получили важное структурное отличие от своих предшественников: число ядер в них было увеличено до шести штук, что с массовой платформой Intel произошло впервые. Однако при этом никаких изменений на уровне микроархитектуры вновь введено не было: Coffee Lake по сути - шестиядерный Skylake, собранный на основе точно таких же по внутреннему устройству вычислительных ядер, которые снабжены увеличенным до 12 Мбайт L3-кешем (по стандартному принципу 2 Мбайт на ядро) и объединены привычной кольцевой шиной.

Впрочем, несмотря на то, что мы так запросто позволяем себе говорить о Coffee Lake «ничего нового», утверждать о полном отсутствии каких-то перемен не совсем справедливо. Хотя в микроархитектуре вновь ничего не поменялось, специалистам Intel пришлось потратить немало усилий для того, чтобы шестиядерные процессоры смогли вписаться в стандартную десктопную платформу. И результат вышел достаточно убедительным: шестиядерные процессоры остались верны привычному тепловому пакету и, более того, совсем не замедлились по тактовым частотам.

В частности, старший представитель поколения Coffee Lake, Core i7-8700K, получил базовую частоту 3,7 ГГц, а в турборежиме он может разгоняться до 4,7 ГГц. При этом оверклокерский потенциал Coffee Lake, несмотря на его более массивный полупроводниковый кристалл, оказался даже лучше, чем у всех предшественников. Core i7-8700K нередко выводятся их рядовыми владельцами на пятигигагерцевый рубеж, причём такой разгон бывает реален даже без скальпирования и замены внутреннего термоинтерфейса. И это значит, что Coffee Lake хоть и экстенсивный, но существенный шаг вперёд.

Всё это стало возможным исключительно благодаря очередному усовершенствованию 14-нм технологического процесса. На четвёртый год его использования для массового производства десктопных чипов Intel удалось добиться действительно впечатляющих результатов. Внедрённая третья версия 14-нм норм («14++ нм» в обозначениях производителя) и перекомпоновка полупроводникового кристалла позволили существенно улучшить производительность в пересчёте на каждый затраченный ватт и поднять суммарную вычислительную мощность. Внедрением шестиядерности Intel, пожалуй, смогла совершить даже более значительный шаг вперёд, чем любым из предшествующих тому улучшений микроархитектуры. И сегодня Coffee Lake смотрится весьма соблазнительным вариантом для модернизации старых систем, основанных на предыдущих носителях микроархитектуры Core.

Кодовое имя Техпроцесс Число ядер GPU L3-кеш, Мбайт Число транзисторов, млрд Площадь кристалла, мм 2
Sandy Bridge 32 нм 4 GT2 8 1,16 216
Ivy Bridge 22 нм 4 GT2 8 1,2 160
Haswell 22 нм 4 GT2 8 1,4 177
Broadwell 14 нм 4 GT3e 6 Н/д ~145 + 77 (eDRAM)
Skylake 14 нм 4 GT2 8 Н/д 122
Kaby Lake 14+ нм 4 GT2 8 Н/д 126
Coffee Lake 14++ нм 6 GT2 12 Н/д 150

⇡ Процессоры и платформы: спецификации

Для проведения сравнения семи последних поколений Core i7 мы взяли старших представителей в соответствующих сериях - по одному от каждого дизайна. Основные характеристики этих процессоров приведены в следующей таблице.

Core i7-2700K Core i7-3770K Core i7-4790K Core i7-5775C Core i7-6700K Core i7-7700K Core i7-8700K
Кодовое имя Sandy Bridge Ivy Bridge Haswell (Devil’s Canyon) Broadwell Skylake Kaby Lake Coffee Lake
Технология производства, нм 32 22 22 14 14 14+ 14++
Дата выхода 23.10.2011 29.04.2012 2.06.2014 2.06.2015 5.08.2015 3.01.2017 5.10.2017
Ядра/потоки 4/8 4/8 4/8 4/8 4/8 4/8 6/12
Базовая частота, ГГц 3,5 3,5 4,0 3,3 4,0 4,2 3,7
Частота Turbo Boost, ГГц 3,9 3,9 4,4 3,7 4,2 4,5 4,7
L3-кеш, Мбайт 8 8 8 6 (+128 Мбайт eDRAM) 8 8 12
Поддержка памяти DDR3-1333 DDR3-1600 DDR3-1600 DDR3L-1600 DDR4-2133 DDR4-2400 DDR4-2666
Расширения набора инструкций AVX AVX AVX2 AVX2 AVX2 AVX2 AVX2
Интегрированная графика HD 3000 (12 EU) HD 4000 (16 EU) HD 4600 (20 EU) Iris Pro 6200 (48 EU) HD 530 (24 EU) HD 630 (24 EU) UHD 630 (24 EU)
Макс. частота графического ядра, ГГц 1,35 1,15 1,25 1,15 1,15 1,15 1,2
Версия PCI Express 2.0 3.0 3.0 3.0 3.0 3.0 3.0
Линии PCI Express 16 16 16 16 16 16 16
TDP, Вт 95 77 88 65 91 91 95
Сокет LGA1155 LGA1155 LGA1150 LGA1150 LGA1151 LGA1151 LGA1151v2
Официальная цена $332 $332 $339 $366 $339 $339 $359

Любопытно, что за прошедшие с момента выпуска Sandy Bridge семь лет Intel так и не смогла заметно нарастить тактовые частоты. Несмотря на то, что дважды менялся технологический производственный процесс и дважды серьезно оптимизировалась микроархитектура, сегодняшние Core i7 почти не продвинулись вперёд по своей рабочей частоте. Новейший Core i7-8700K имеет номинальную частоту 3,7 ГГц, что всего лишь на 6 процентов выше частоты вышедшего в 2011 году Core i7-2700K.

Впрочем, такое сравнение не совсем корректно, ведь Coffee Lake имеет в полтора раза больше вычислительных ядер. Если же ориентироваться на четырёхъядерный Core i7-7700K, то рост частоты выглядит всё-таки убедительнее: этот процессор ускорился относительно 32-нм Core i7-2700K на достаточно весомые 20 процентов в мегагерцевом выражении. Хотя всё равно вряд ли это можно назвать впечатляющим приростом: в абсолютных величинах это конвертируется в прибавку по 100 МГц в год.

Нет никаких прорывов и в других формальных характеристиках. Intel продолжает снабжать все свои процессоры индивидуальной кеш-памятью второго уровня объёмом 256 Кбайт на ядро, а также общим на все ядра L3-кешем, размер которого определяется из расчёта 2 Мбайт на ядро. Иными словами, главный фактор, по которому произошёл самый большой прогресс, - это число вычислительных ядер. Развитие Core начиналось с четырёхъядерных CPU, а пришло к шестиядерным. Причём очевидно, что это ещё не конец и в ближайшей перспективе мы увидим и восьмиядерные варианты Coffee Lake (либо Whiskey Lake).

Впрочем, как нетрудно заметить, за семь лет у Intel почти не менялась и ценовая политика. Даже шестиядерный Coffee Lake по сравнению с предшествующими четырёхъядерными флагманами подорожал всего лишь на шесть процентов. Все же остальные старшие процессоры класса Core i7 для массовой платформы всегда обходились потребителям в сумму порядка $330-340.

Любопытно, что самые крупные перемены произошли даже не с самими процессорами, а с поддержкой ими оперативной памяти. Пропускная способность двухканальной SDRAM с момента выхода Sandy Bridge и до сегодняшнего дня выросла вдвое: с 21,3 до 41,6 Гбайт/с. И это - ещё одно немаловажное обстоятельство, определяющее преимущество современных систем, совместимых со скоростной DDR4-памятью.

Да и вообще, все эти годы вместе с процессорами эволюционировала и вся остальная платформа. Если вести речь о главных вехах в развитии платформы, то, помимо роста скорости совместимой памяти, отметить хочется и появление поддержки графического интерфейса PCI Express 3.0. Кажется, что скоростная память и быстрая графическая шина наряду с прогрессом в частотах и архитектурах процессоров выступают весомыми причинами того, что современные системы стали лучше и быстрее прошлых. Поддержка DDR4 SDRAM появилась в Skylake, а перевод процессорной шины PCI Express на третью версию протокола произошёл ещё в Ivy Bridge.

Кроме того, заметное развитие получили и сопутствующие процессорам наборы системной логики. Действительно, сегодняшние интеловские чипсеты трёхсотой серии могут предложить гораздо более интересные возможности в сравнении с Intel Z68 и Z77, которые использовались в LGA1155-материнских платах под процессоры поколения Sandy Bridge. В этом нетрудно убедиться по следующей таблице, в которой мы свели воедино характеристики флагманских интеловских чиспсетов для массовой платформы.

P67/Z68 Z77 Z87 Z97 Z170 Z270 Z370
Совместимость с CPU Sandy Bridge
Ivy Bridge
Haswell Haswell
Broadwell
Skylake
Kaby Lake
Coffee Lake
Интерфейс DMI 2.0 (2 Гбайт/с) DMI 3.0 (3,93 Гбайт/с)
Стандарт PCI Express 2.0 3.0
Линии PCI Express 8 20 24
Поддержка PCIe M.2 Нет
Есть
Есть, до 3 устройств
Поддержка PCI Есть Нет
SATA 6 Гбит/с 2 6
SATA 3 Гбит/с 4 0
USB 3.1 Gen2 0
USB 3.0 0 4 6 10
USB 2.0 14 10 8 4

В современных наборах логики существенно развились возможности для подключения высокоскоростных носителей информации. Самое главное: благодаря переходу чипсетов на шину PCI Express 3.0 сегодня в производительных сборках можно использовать быстродействующие NVMe-накопители, которые даже по сравнению с SATA SSD могут предложить заметно лучшую отзывчивость и более высокую скорость чтения и записи. И одно только это может стать веским аргументом в пользу модернизации.

Кроме того, современные наборы системной логики предоставляют гораздо более богатые возможности для подключения дополнительных устройств. И речь не только о существенном увеличении числа линий PCI Express, что обеспечивает наличие на платах нескольких дополнительных слотов PCIe, заменяющих обычные PCI. Попутно в сегодняшних чипсетах имеется также и врождённая поддержка портов USB 3.0, а многие современные материнские платы снабжаются и портами USB 3.1 Gen2.

Превосходство первых Core i (Nehalem и, в 2009 г., Westmere) над ЦП соперника стало окончательным? Ситуация немного напоминает первый год после выхода Pentium II: почивая на лаврах и получая рекордную прибыль, хорошо бы сделать продолжение удачной архитектуры, не сильно изменив её название, добавив новые , использование которых значительно улучшит производительность, не забыв и о других новшествах, ускоряющих сегодняшние версии программ. Правда, в отличие от ситуации 10-летней давности, надо обратить внимание и на модную ныне тему энергоэффективности, обыгранную двусмысленным прилагательным Cool - «крутой» и «холодный», - и не менее модное стремление встроить в процессор всё, что пока ещё существует как отдельные . Вот под таким соусом и подана новинка.

«Позавчера», «вчера» и «сегодня» процессоров Intel.


Фронт конвейера. Цвета показывают разные виды информации и обрабатывающих или хранящих её блоков.

Предсказание

Начнём с заявления Intel о полностью переработанном (BPU). Как и в Nehalem, он каждый такт (и наперёд реального исполнения) предсказывает адрес следующей 32-байтовой порции кода в зависимости от предполагаемого поведения команд перехода в только что предсказанной порции - причём, судя по всему, вне всякой зависимости от числа и типа переходов. Точнее, если в текущей порции есть предположительно срабатывающий переход, выдаются его собственный и целевой адреса́, иначе - переход к следующей подряд порции. Сами предсказания стали ещё точней за счёт удвоения (BTB), удлинения (GBHR) и оптимизации хэш-функции доступа к (BHT). Правда, фактические тесты показали, что в некоторых случаях эффективность предсказания всё же чуть хуже, чем в Nehalem. Может быть, увеличение производительности с уменьшением потребления не совместимо с качественным предсказанием переходов? Попробуем разобраться.

В Nehalem (как и других современных архитектурах) BTB присутствует в виде двухуровневой иерархии - малый-«быстрый» L1 и большой-«медленный» L2. Происходит это по той же причине, почему существуют несколько уровней : одноуровневое решение окажется слишком компромиссным по всем параметрам (размер, скорость срабатывания, потребление и пр.). Но в SB архитекторы решили поставить один уровень, причём размером вдвое больше, чем L2 BTB у Nehalem, т. е. наверняка не менее 4096 ячеек - именно столько их в Atom. (Следует учесть, что размер наиболее часто исполняемого кода медленно растёт и всё реже умещается в кэше , размер которого совпадает у всех ЦП Intel с первых Pentium M.) По идее, при этом увеличится занимаемая BTB площадь, а т. к. общую площадь менять не рекомендуется (таков один из начальных постулатов архитектуры) - у какой-то другой структуры что-то придётся забрать. Но остаётся ещё и скорость. Учитывая, что SB должен быть рассчитан на чуть большую скорость при том же техпроцессе, можно ожидать, что эта крупная структура будет бутылочным горлышком всего конвейера - если только не конвейеризировать и её (двух уже хватит). Правда, общее число срабатывающих за такт транзисторов в BTB при этом удвоится, что совсем не способствует энергоэкономии. Опять тупик? На это Intel отвечает, что новый BTB хранит адреса в некоем сжатом состоянии, что позволяет иметь вдвое больше ячеек при похожих площади и потреблении. Но проверить это пока невозможно.

Смотрим с другой стороны. SB получил не новые алгоритмы предсказания, а оптимизированные старые: общий, для косвенных переходов, циклов и возвратов. Nehalem имеет 18-битный GBHR и BHT неизвестного размера. Впрочем, можно гарантировать, что число ячеек в таблице меньше, чем 2 18 , иначе она бы заняла бо́льшую часть ядра. Поэтому существует специальная хэш-функция, сворачивающая 18 бит истории всех переходов и биты адреса команды в индекс меньшей длины. Причём, скорее всего, хэшей как минимум два - для всех битов GBHR и для тех, что отражают срабатывание наиболее трудных переходов. И вот эффективность хаотичного распределения индексами различных шаблонов поведения по номерам ячеек BHT определяет успешность предсказателя общего вида. Хотя явно это не сказано, но Intel наверняка улучшила хэши, что позволило использовать GBHR бо́льшей длины с не меньшей эффективностью заполнения. А вот о размере BHT по прежнему можно гадать - как и о том, как на самом деле изменилось потребление энергии предсказателем в целом… Что касается (RSB), он по-прежнему 16-адресный, но введено новое ограничение на сами вызовы - не более четырёх на 16 байт кода.

Пока мы не ушли далее, скажем о небольшом несоответствии декларируемой теории и наблюдаемой практики - а она показала, что предсказатель циклов в SB изъят, в результате чего предсказание финального перехода в начало цикла делается общим алгоритмом, т. е. хуже. Представитель Intel заверил нас, что ничего «хуже» быть не должно, однако…

Декодирование и IDQ

Предсказанные наперёд адреса исполняемых команд (попеременно для каждого потока - при включенной технологии ) выдаются для проверки их наличия в кэшах команд (L1I) и (L0m), но о последнем умолчим - опишем пока остальную часть фронта. Как ни странно, Intel сохранила размер считываемой из L1I порции команд в 16 байт (тут слово «порция» понимается согласно нашему ). До сих пор это было препятствием для кода, средний размер команд которого перерос 4 байта, а потому 4 команды, желательные для исполнения за такт, уже не уместятся в 16 байт. AMD решила эту проблему в архитектуре K10, расширив порцию команд до 32 байт - хотя её ЦП пока имеют не более чем 3- конвейер. В SB неравенство размеров приводит к побочному эффекту: предсказатель выдаёт очередной адрес 32-байтового блока, и если обнаружится (предположительно) срабатывающий переход в его первой половине, то считывать и декодировать вторую не надо - однако это будет сделано.

Из L1I порция попадает в предекодера, а оттуда - в сам -длиномер (), обрабатывающий до 7 или 6 команд/такт (с и без ; Nehalem умел максимум 6) в зависимости от их совокупной длины и сложности. Сразу после перехода обработка начинается с команды по целевому адресу, иначе - с того байта, перед которым предекодер остановился тактом ранее. Аналогично с финальной точкой: либо это (вероятно) срабатывающий переход, адрес последнего байта которого поступил от BTB, либо последний байт само́й порции - если только не достигнут предел в 7 команд/такт, или не встретилась «неудобная» команда. Скорее всего, буфер длиномера имеет всего 2–4 порции, однако длиномер может получить из него любые 16 подряд идущих байт. Например, если в начале порции опознаны 7 двухбайтовых команд, то в следующем такте можно обработать ещё 16 байт, начиная с 15-го.

Длиномер, помимо прочего, занимается обнаружением пар макросливаемых команд. О самих парах поговорим чуть позже, а пока заметим, что, как и в Nehalem, каждый такт может быть обнаружено не более одной такой пары, хотя максимум их можно было бы разметить 3 (и ещё одну одиночную команду). Однако измерение длин команд - процесс частично последовательный, так что определить несколько макросливаемых пар не удалось бы в течение такта.

Размеченные команды попадают в одну из двух команд (IQ: instruction queue) - по одной на поток, на 20 команд каждая (что на 2 больше, чем у Nehalem). попеременно читает команды из очередей и переводит их в мопы. В нём есть 3 простых (переводят 1 команду в 1 моп, а с макрослиянием - 2 команды в 1 моп), сложный транслятор (1 команда в 1–4 мопа или 2 команды в 1 моп) и микросеквенсер для самых сложных команд, требующих 5 и более мопов из . Причём хранит только «хвосты» каждой последовательности, начиная с 5-го мопа, потому что первые 4 выдаются сложным транслятором. При этом если число мопов в микропрограмме не делится нацело на 4, то их последняя четвёрка будет неполной, но вставить ещё 1–3 мопа от трансляторов в этом же такте не получится. Результат декодирования поступает в и два (по одному на поток). Последние (официально именуемые IDQ - instruction decode queue, очередь декодированных команд) по-прежнему имеют по 28 мопов и возможность блокировки цикла, если его исполняемая часть там уместится.

Всё это (кроме кэша мопов) уже было в Nehalem. А в чём же различия? Прежде всего, что очевидно, декодер научили обрабатывать новые команды поднабора . Поддержка наборов SSE со всеми цифрами уже никого не удивляет, а ускорение шифрования командами (включая PCLMULQDQ) было добавлено в Westmere (32 нм версия Nehalem). В подложили подводный камень: эта функция не срабатывает для команд, имеющих и константу, и RIP-относительную адресацию (RIP-relative, адрес относительно -указателя команды - обычный способ обращения к данным в 64-битном коде). Такие команды требуют 2 мопа (отдельно загрузка и операция), а значит - декодер их обработает не более одной за такт, используя лишь сложный транслятор. Intel утверждает, что эти жертвы сделаны для экономии энергии, только не ясно, на чём: двухкратные размещение, исполнение и мопов явно займут больше ресурсов, а значит - и потребят энергии, чем один.

Макрослияние оптимизировано - ранее в качестве первой сливаемой команды могло быть лишь арифметическое или логическое сравнение (CMP или TEST), теперь же допустимы простые арифметические команды сложения и вычитания (ADD, SUB, INC, DEC) и логического «И» (AND), также меняющие для перехода (вторая команда пары). Это позволяет почти в любом цикле сократить последние 2 команды до 1 мопа. Разумеется, ограничения на сливаемые команды остались, но они некритичны, т. к. перечисленные ситуации для пары команд почти всегда исполняются:

  • первый первой команды должен быть регистром;
  • если второй операнд первой команды находится в памяти, RIP-относительная адресация недопустима;
  • вторая команда не может находиться в начале или пересекать границу строк.

Правила для самого́ перехода такие:

  • только TEST и AND совместимы с любым условием;
  • сравнения на (не) равно и любые знаковые совместимы с любой разрешённой первой командой;
  • сравнения на (не) перенос и любые беззнаковые не совместимы с INC и DEC;
  • остальные сравнения (знак, переполнение, чётность и их отрицания) допустимы лишь для TEST и AND.

Главное изменение в очередях мопов - слитые мопы типа , обращение в память в которых требует чтения индексного регистра, (и ещё несколько редких видов) при записи в IDQ разделяются на пары. Даже если таких мопов попадётся 4, то в IDQ запишутся все 8 итоговых. Делается это потому, что в очередях мопов (IDQ), диспетчера (ROB) и резервации теперь применяется сокращённый формат мопа без 6-битного поля индекса (разумеется, для экономии при перемещении мопов). Предполагается, что такие случаи будут редки, а потому на скорость сильно влиять не будут.

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

  • мопы цикла должны порождаться не более чем 8-ю 32-байтовыми порциями исходного кода;
  • эти порции должны быть закэшированы в L0m (в Nehalem, разумеется, - в L1I);
  • допускается до 8 безусловных переходов, предсказанных как срабатывающие (включая финальный);
  • вызовы и возвраты недопустимы;
  • недопустимы непарные обращения в стек (чаще всего при неравном числе команд PUSH и POP) - об этом ниже.

Стековый движок

Есть ещё один механизм, работу которого мы в прошлых статьях не рассматривали - стековый движок (stack pointer tracker, «следитель за указателем (на вершину) стека»), расположенный перед IDQ. Он появился ещё в Pentium M и до сих пор не изменился. Суть его в том, что модификация указателя стека (регистра ESP/RSP для 32/64-битного режима) командами для работы с ним (PUSH, POP, CALL и RET) делается отдельным сумматором, результат хранится в специальном регистре и возвращается в моп как константа - вместо того, чтобы модифицировать указатель в после каждой команды, как это требует и как было в ЦП Intel до Pentium M.

Это происходит до тех пор, пока какая-то команда не обратится к указателю напрямую (и в некоторых других редких случаях) - стековый движок сравнивает теневой указатель с нулём и при ненулевом значении вставляет в поток мопов до вызывающей указатель команды синхронизирующий моп, записывающий в указатель актуальное значение из спецрегистра (а сам регистр сбрасывается). Поскольку требуется это редко, большинство обращений в стек, лишь неявно модифицирующих указатель, пользуются его теневой копией, изменяемой одновременно с остальными операциями. Т. е. с точки зрения блоков конвейера такие команды кодируются единственным слитым мопом и ничем не отличаются от обычных обращений в память, не требуя обработки в АЛУ.

Внимательный Читатель (добрый день!) заметит связь: при зацикливании очереди мопов непарные обращения в стек недопустимы именно по причине того, что стековый движок в конвейере находится до IDQ - если после очередной итерации значение теневого указателя окажется ненулевым, в новой потребуется вставить синхромоп, а в циклическом режиме это невозможно (мопы только читаются из IDQ). Более того, стековый движок вообще при этом выключен для экономии энергии, как и все остальные части фронта.

Тайная жизнь нопов

Ещё одно изменение коснулось длиномера, но этот случай несколько выделяется. Сначала вспомним, что такое и зачем они нужны. Когда-то в архитектуре x86 ноп был лишь 1-байтовый. Когда требовалось сместить код более чем на 1 байт или заменить команды длиной более 1-го байта, ноп просто вставляли несколько раз. Но несмотря на то, что эта команда ничего не делает, время на её декодирование всё-таки тратится, причём пропорционально числу нопов. Чтобы производительность «пропатченной» программы не просела, ноп можно удлинить . Однако в ЦП 90-х годов темп декодирования команд с числом префиксов выше определённой величины (которая куда меньше максимально допустимой длины x86-команды в 15 байт) резко падал. Кроме того, конкретно для нопа префикс применяется, как правило, одного вида, но многократно повторенный, что допускается лишь как нежелательное исключение, усложняющие длиномер.

Для разрешения указанных проблем начиная с Pentium Pro и Athlon процессоры понимают «длинный ноп» с байтом modR/M для «официального» удлинения команды с помощью регистров и адресного смещения. Естественно, никаких операций с памятью и регистрами не происходит, но при определении длины используются те же блоки длиномера, что и для обычных многобайтовых команд. Теперь использование длинных нопов официально рекомендуется учебниками по низкоуровневой программной оптимизации и от Intel, и от AMD. Кстати, предекодер SB вдвое (с 6 до 3 тактов) уменьшил штраф за префиксы 66 и 67, меняющие длину константы и адресного смещения - но, как и в Nehalem, штраф не накладывается на команды, где эти префиксы фактически не меняют длину (например, если префикс 66 применён к команде без непосредственного операнда) или являются частью списка переключателей (что сплошь и рядом используется в векторном коде).

Максимальная длина верно оформленного длинного нопа не превышает 9 байт для Intel и 11 для AMD. А потому для выравнивания на 16 или 32 байта нопов всё-таки может быть несколько. Однако т. к. команда эта простая, её декодирование и «исполнение» займёт ресурсов никак не больше обработки самых простых действующих команд. Поэтому уже много лет тестирование длинными нопами является стандартным методом определения параметров фронта конвейера, в частности - длиномера и декодера. И вот тут Sandy Bridge преподнёс очень странный сюрприз: тестирование производительности обычных программ не выявило никаких задержек и замедлений, а вот дежурная синтетическая проверка параметров декодера неожиданно показала, что его производительность равна одной команде за такт! При этом никаких официальных оповещений о таких радикальных изменениях в декодере Intel не давала.

Процедура замера отлично работала ещё на Nehalem и показывала верные 4 . Можно свалить вину на новый и «чрезмерно» активный Turbo Boost 2.0, портящий замеряемые показатели тактов, но для тестов он был отключен. Перегрев с замедляющим частоту тротлингом тоже исключён. А когда, наконец, причина обнаружилась - стало ещё страннее: оказывается, длинные нопы на SB обрабатываются только первым простым транслятором, хотя 1-байтовые нопы с любым числом префиксов и аналогичные «по бездействию» команды (например, копирование регистра в себя) запросто принимаются всеми четыремя. Зачем так было делать - не ясно, однако как минимум один недостаток такого технического решения уже себя явно показал: на выяснение причин загадочной медлительности декодера нашей исследовательской командой было угрохано дней десять… В отместку просим яростных фанатов Противоположного Лагеря придумать какую-нибудь конспирологическую теорию о коварных планах некой компании I. по запутыванию наивных доблестных исследователей процессоров. :)

Кстати, как оказалось, «более равным» среди прочих транслятор №1 уже был. В Nehalem команды циклической прокрутки (ROL и ROR) с явным операндом-константой тоже декодировались только в первом трансляторе, причём в этом же такте отключался четвёртый, так что величина IPC падала до 3-х. Казалось бы - зачем приводить тут такой редкий пример? Но именно из-за этого подвоха, чтобы добиться пиковой скорости на алгоритмах хэширования вроде SHA-1, нужна была очень точная планировка команд, с которой компиляторы не справлялись. В SB же такие команды просто стали 2-мопными, так что, занимая сложный транслятор (который и так один), они ведут себя почти неотличимо для ЦП, но более предсказуемо для человека и компилятора. С нопами же получилось всё наоборот. Кэш мопов

Цели и предшественники

Мы не зря отделили эту главу от остального описания фронта - добавление кэша мопов наглядно демонстрирует, какой путь выбрала Intel для всех своих процессоров, начиная с Core 2. В последний впервые (для Intel) был добавлен блок, который одновременно достигал две, казалось бы, противоречивые цели: увеличение скорости и экономия энергии. Речь идёт об очереди команд (IQ) между предекодером и декодером, хранившей тогда до 18 команд длиной до 64 байт в сумме. Если бы она только сглаживала разницу темпов подготовки и декодирования команд (как обычный буфер) - выгода была бы небольшая. Но в Intel догадались приделать к IQ небольшой блок LSD (вряд ли парни что-то «приняли», просто у них юмор такой) - Loop Stream Detector, «детектор циклического потока». При обнаружении цикла, умещающегося в 18 команд, LSD отключает все предыдущие стадии (предсказатель, кэш L1I и предекодер) и поставляет из очереди в декодер команды цикла, пока тот не завершится, либо пока не будет сделан переход за его пределы (вызовы и возвраты не допустимы). Таким образом экономится энергия за счёт отключения временно простаивающих блоков и увеличивается производительность за счёт гарантированного потока в 4 команды/такт для декодера, даже если они были «снабжены» самыми неудобными префиксами.

Intel явно понравилась эта идея, так что для Nehalem схема была оптимизирована: IQ продублирована (для двух потоков), а между декодером и диспетчером (т. е. аккурат на границе фронта и тыла) были поставлены две очереди IDQ на 28 мопов каждая, и блок LSD перенесли к ним. Теперь при блокировке цикла отключается ещё и декодер, а производительность поднялась в т. ч. за счёт гарантированного притока уже не 4-х команд, а 4-х мопов за такт, даже если их генерация производилась с минимальным (для Core 2/i) темпом в 2 мопа/такт. Яростные фанаты Противоположного Лагеря, на секунду оторвавшись от любимого занятия, тут же вставят шпильку: если LSD такая хорошая штука, почему же его не встроили в Atom? И шпилька справедлива - имея 32-моповую очередь после декодера, Atom не умеет блокировать в ней цикл, что как раз очень бы пригодилось для экономии драгоценных милливатт. Тем не менее, Intel не собиралась бросать идею и для новых ЦП подготовила обновление, да ещё какое!

Официальное внутреннее название кэша мопов - DSB (decode stream buffer: буфер потока декодирования), хотя он не так точно отражает суть, как рекомендуемый термин DIC (decoded instruction cache: кэш декодированных команд). Как ни странно, он не подменяет, а дополняет очереди IDQ, которые теперь соединяются с декодером или с кэшем мопов. При очередном предсказании перехода целевой адрес одновременно проверяется в кэшах команд и мопов. Если сработает последний - то далее считывание идёт из него, а остальной фронт отключается. Вот почему кэш мопов является кэшем нулевого уровня для мопов, т. е. L0m.

Интересно, что продолжить эту мысль можно, назвав IDQ кэшами «минус первого» уровня. :) Но не является ли такая сложная иерархия в рамках даже не всего ядра, а одного только фронта избыточной? Пускай Intel в качестве исключения не пожалела площадь, но принесёт ли пара IDQ существенную дополнительную экономию, учитывая, что при их работе теперь отключается лишь кэш мопов, т. к. остальной фронт (кроме предсказателя) и так спит? И ведь особой прибавки к скорости тоже не получишь, т. к. кэш мопов также настроен на генерацию 4 мопов/такт. Видимо, инженеры Intel решили, что 3-уровневая игра стоит милливаттовых свеч.

Кроме экономии, кэш мопов ускоряет производительность в т. ч. сокращением штрафа при фальш-предсказании перехода: в Nehalem при нахождении верного кода в L1I штраф был 17 тактов, в SB - 19, но если код нашёлся в L0m - то только 14. Причём это максимальные цифры: при ложно предсказанного перехода планировщику надо ещё запустить и завершить предыдущие в программном порядке мопы, а за это время L0m может успеть подкачать верные мопы, чтобы планировщик успел их запустить сразу после отставки команд до перехода. В Nehalem такой приём работал с IDQ и фронтом, но в первом случае вероятность того, что верный целевой адрес тоже будет внутри 28-мопового цикла, весьма мал, а во втором медлительность фронта в большинстве случаев не позволяла снизить задержку до нуля. У SB такой шанс больше.

Устройство

Топологически L0m состоит из 32 по 8 строк (8- ). В каждой строке хранится 6 мопов (во всём кэше - 1536, т. е. «полтора киломопа»), причём за такт кэш может записать и считать по одной строке. Предсказатель выдаёт адреса 32-байтовых блоков, и именно этот размер является рабочим для L0m, поэтому далее под термином «порция» будем понимать выровненный и предсказанный как исполняющийся 32-байтовый блок кода (а не 16-байтовый, как для декодера). При декодировании контроллер L0m ждёт обработки порции до конца или до первого срабатывающего в ней перехода (разумеется, предположительно - тут и далее полагаем предсказания всегда верными), накапливая мопы одновременно с их отправкой в тыл. Затем он фиксирует точки входа в порцию и выхода из неё, согласно поведению переходов. Обычно точкой входа оказывается целевой адрес срабатывающего в предыдущей порции перехода (точнее, младшие 5 бит адреса), а точкой выхода - собственный адрес срабатывающего перехода в этой порции. В крайнем случае, если ни в предыдущей, ни в текущей порциях не сработает ни один переход (т. е. порции не только исполняются, но и хранятся подряд), то обе выполнятся целиком - вход в них будет на нулевом мопе и первом байте первой целиком уместившейся в этой порции команды, а выход - на последнем мопе последней целиком уместившейся команды и её начальном байте.

Если в порции оказалось более 18 мопов - она не кэшируется. Это задаёт минимум среднего (в пределах порции) размера команды в 1,8 байта, что не будет серьёзным ограничением в большинстве программ. Можно вспомнить второй пункт ограничений IDQ - если цикл уместится в порции, но займёт от 19 до 28 мопов, его не зафиксируют ни кэш L0m, ни очередь IDQ, хотя по размеру он бы везде уместился. Впрочем, в этом случае средняя длина команд должна быть 1,1–1,7 байта, что для двух десятков команд подряд крайне маловероятно.

Скорее всего, мопы порции одновременно записываются в кэш, занимая 1–3 строки одного набора, так что для L0m нарушается один из главных принципов работы наборно-ассоциативного кэша: при обычно срабатывает одна строка набора. Тут же теги до трёх строк могут получить адрес одной и той же порции, отличаясь лишь порядковыми номерами. При попадании предсказанного адреса в L0m считывание происходит аналогично - срабатывают 1, 2 или 3 пути нужного набора. Правда, такая схема таит в себе недостаток.

Если исполняемая программа во всех порциях декодируется в 13–18 мопов, что займёт по 3 строки L0m для всех порций, обнаружится следующее: если текущий набор уже занят двумя 3-строчными порциями, и в него пытается записаться третья (которой не хватит одной строки), придётся вытеснить одну из старых, а с учётом её связности - все 3 старых. Таким образом больше двух порций «мелко-командного» кода в наборе не должно уместиться. При проверке этого предположения на практике получилось вот что: порции с крупными командами, требующие менее 7 мопов, упаковались в L0m числом в 255 (ещё одну занять почему-то не получилось), уместив почти 8 КБ кода. Средние порции (7–12 мопов) заняли все 128 возможных позиций (по 2 строки каждая), закэшировав ровно 4 КБ. Ну а мелкие команды уместились в 66-и порциях, что на две больше ожидаемого значения (2112 байт против 2048), что, видимо, объясняется граничными эффектами нашего тестового кода. Недостача на лицо - если бы 256 6-моповых строк могли быть заполнены полностью, их бы хватило на 85 полных троек с общим размером кода 2720 байт.

Возможно, Intel не рассчитывает, что в каком-то коде будет так много коротких и простых команд, что более 2/3 его придётся на 3-строчные порции, которые станут вытеснять друг друга из L0m раньше необходимого. А даже если такой код и встретится - учитывая простоту его декодирования, остальные блоки фронта запросто справятся с задачей поставки необходимых тылу 4 мопов/такт (правда, без обещанной экономии ватт и тактов штрафа при фальш-предсказании). Любопытно, что имей L0m 6 путей, проблемы бы не возникло. Intel же решила, что иметь размер кэша на треть больше именно за счёт ассоциативности - важнее…

Размеры

Вспомним, что идея кэшировать большое количество мопов вместо команд x86, не нова. Впервые она появилась в Pentium 4 в виде кэша моп-трасс - последовательностей мопов после развёртки циклов. Причём кэш трасс не дополнял, а заменял отсутствующий L1I - команды для декодера читались сразу из . Не смотря на забвение архитектуры NetBurst, разумно предположить, что инженеры Intel использовали прошлый опыт, хоть и без развёртки циклов и выделенного для кэша предсказателя. Сравним старое и новое решения (новые ЦП тут названы Core i 2, потому что номера почти всех моделей с архитектурой SB начинаются с двойки):

* - предположительно

Тут нужны пояснения. Во-первых, пропускная способность для L0m указана с учётом общего ограничения ширины конвейера в 4 мопа. Выше мы предположили, что за такт L0m может прочесть и записать по 18 мопов. Однако при чтении все 18 (если их получилось именно столько при декодировании оригинальной порции) не могут быть отправлены за такт, и отправка происходит за несколько тактов.

Далее, размер мопа в битах вообще относится к очень деликатной информации, которую производители либо вообще не выдают, либо только при припирании к стенке (дескать, вы и так уже всё вычислили, так и быть - подтвердим). Для ЦП Intel последняя достоверно известная цифра - 118 бит для Pentium Pro. Ясно, что с тех пор размер увеличился, но с этого места начинаются догадки. 118 бит для 32-битного x86-ЦП может получиться, если в мопе есть поля для адреса породившей его команды (32 бита), непосредственного операнда (32 бита), адресного смещения (32 бита), регистровых операндов (3 по 3 бита + 2 бита на масштаб для индексного регистра) и опкода (11 бит, в которых закодирован конкретный вариант x86-команды с учётом префиксов). После добавления , и SSE2 поле опкода наверняка выросло на 1 бит, откуда и получена цифра 119.

После перехода на (Prescott и далее), по идее, все 32-битные поля должны возрасти до 64-х бит. Но тут есть тонкости: 64-битные константы в x86-64 допускаются только по одной (т. е. более 8 байт обе константы в команде точно не займут), а и тогда, и сейчас пока обходится 48 битами. Так что увеличить размер мопа требуется всего на 16 бит адреса и 3 дополнительных бита номеров регистров (коих стало 16) - получаем (примерно) 138 бит. Ну а в SB моп, видимо, вырос ещё на 1 бит за счёт добавления очередных нескольких сотен команд со времён последних P4, и ещё на 8 - за счёт увеличения максимального числа явно указанных регистров в команде до 5 (при использовании AVX). Последнее, впрочем, сомнительно: со времён, представьте себе, аж i386 в архитектуру x86 не была добавлена ни одна новая команда, требующая хотя бы 4 байта константы (с единственным недавним и крайне незаметным исключением в SSE4.a от AMD, о котором даже большинство программистов не знает). А т. к. Intel AVX и AMD обновили кодировку лишь векторных команд, биты номеров дополнительных регистров уместятся в старшей половине частично неиспользуемого (для этих команд) 32-битного поля непосредственного операнда. Тем более, что и в само́й x86-команде 4-й или 5-й регистр кодируется как раз четыремя битами константы.

Очевидно, что хранить и пересылать таких «монстров» в сколько-нибудь большом количестве - сильно затратно. Поэтому ещё для P4 Intel придумала сокращённый вариант мопа, в котором лишь одно поле для обеих констант, причём если они там не умещаются, то недостающие биты размещаются в этом же поле соседнего мопа. Однако если он уже хранит там свои константы, то в качестве соседа приходится вставлять ноп как донор-носитель дополнительных бит. Преемственность такой схемы наблюдается и в SB: лишние нопы не вставляются, но команды с 8-байтовыми константами (или с суммой размеров константы и адресного смещения в 5–8 байт) имеют в L0m двойной размер. Впрочем, учитывая длину таких команд, больше 4-х их в порции не уместится, так что ограничение по занимаемым мопам явно некритично. Тем не менее, констатируем: SB, в отличие от предыдущих ЦП, имеет аж 3 формата мопов - декодируемый (самый полный), хранимый в кэше мопов (с сокращением констант) и основной (без поля регистра индекса), используемый далее в конвейере. Впрочем, большинство мопов проходят нетронутыми от декодирования до отставки.

Ограничения

«Правила пользования кэшем» на спецформате мопов не заканчиваются. Очевидно, столь удобный блок как L0m никак не мог оказаться совсем без ограничений той или иной степени серьёзности, о которых нам не рассказали в рекламных материалах. :) Начнём с того, что все мопы транслируемой команды должны уместиться в одной строке, иначе они переносятся в следующую. Это объяснимо тем, что адреса мопов строки хранятся отдельно (для экономии 48 бит в каждом мопе), а все порождаемые командой мопы должны соответствовать адресу её первого байта, хранимому в теге только одной строки. Для восстановления оригинальных адресов в тегах хранятся длины породивших мопы команд. «Непереносимость» мопов несколько портит эффективность использования L0m, т. к. изредка встречающиеся команды, генерирующие несколько мопов, имеют существенный шанс не уместиться в очередной строке.

Более того, мопы самых сложных команд по-прежнему хранятся в ПЗУ с микрокодом, а в L0m попадают лишь первые 4 мопа последовательности, плюс ссылка на продолжение, так что всё вместе занимает целую строку. Из этого следует, что в порции могут встретиться не более трёх микрокодовых команд, а учитывая средний размер команды более вероятным пределом будут две. В реальности, впрочем, они попадаются куда реже.

Ещё один важный момент - L0m не имеет своего . Вроде бы, это должно ускорять проверку адресов (которые тут только виртуальные) и уменьшить потребление энергии. Но всё гораздо интересней - не зря все современные кэши имеют . Виртуальные адресные пространства исполняемых в ОС программ могут пересекаться, поэтому при переключении контекста задачи, чтобы по тем же адресам не считать старые данные или код, виртуально адресуемый кэш должен сбрасываться (именно так было с кэшем трасс у P4). Разумеется, его эффективность при этом будет низкой. В некоторых архитектурах применяются т. н. ASID (address space identifier, идентификатор адресного пространства) - уникальные числа, присваиваемые ОС каждому потоку. Однако x86 не поддерживает ASID за ненадобностью - учитывая наличие физических тегов для всех кэшей. Но вот пришёл L0m и нарушил картину. Более того, вспомним, что кэш мопов, как и большинство ресурсов ядра, разделяется между двумя потоками, так что в нём окажутся мопы разных программ. А если добавить переключение между виртуальными ОС в соответствующем режиме, то мопы двух программ могут совпасть по адресам. Что же делать?

Проблема с потоками решается просто - L0m просто делится пополам по наборам, так что номер потока даёт старший бит номера набора. Кроме того, L1I имеет политику хранения относительно L0m. Поэтому при вытеснении кода из L1I происходит и удаление его мопов из L0m, что требует проверки двух смежных порций (размер строки всех кэшей современных ЦП, не считая самого́ L0m - 64 байта). Таким образом виртуальный адрес из закэшированных мопов всегда можно проверить в тегах L1I, используя его TLB. Выходит, что хоть L0m и имеет виртуальную адресацию, но заимствует физические теги для кода из L1I. Тем не менее, есть ситуация, при которой L0m целиком сбрасывается - и замещение в L1I TLB, а также его полный сброс (в т. ч. при переключении режимов работы ЦП). Кроме того, L0m совсем отключается, если базовый адрес селектора кода (CS) не равен нулю (что крайне маловероятно в современных ОС).

Работа

Главный секрет кэша мопов - алгоритм, подменяющий чтениями из L0m работу фронта по переработке команд в мопы. Начинается он с того, что при очередном переходе для выбора набора L0m использует биты 5–9 адреса цели перехода (или биты 5–8 плюс номер потока - при 2-поточности). В тегах набора указаны точка входа в порцию, мопы которой записаны в соответствующей тегу строке, и порядковый номер этой строки в пределах порции. Совпасть могут 1–3 строки, которые (скорее всего) одновременно считываются в 18-моповый буфер. Оттуда мопы четвёрками посылаются в IDQ, пока не будет достигнута точка выхода - и всё повторяется сначала. Причём когда в порции остаются неотправленными 1–3 последних мопа, они высылаются с 3–1 первыми мопами новой порции, в сумме составив обычную четвёрку. Т. е. с точки зрения принимающей мопы очереди IDQ все переходы сглажены в равномерный поток кода - как в P4, но без кэша трасс.

А теперь любопытный момент - в строке допускается не более двух переходов, причём если один из них - безусловный, то он окажется последним для строки. Наш Внимательный Читатель сообразит, что на всю порцию допустимо иметь до 6 условных переходов (каждый из которых может сработать, не будучи при этом точкой выхода), либо 5 условных и 1 безусловный, который будет последней командой порции. Предсказатель переходов в ЦП Intel устроен так, что он не замечает условный переход, пока он хотя бы раз не сработает, и только после этого его поведение будет предсказываться. Но даже «вечносрабатывающие» переходы тоже подпадают под ограничение. Фактически это значит, что завершить исполнение мопов порции допустимо и до точки её выхода.

А вот аналогичный трюк со множественным входом не пройдёт - если происходит переход в уже закэшированную порцию, но по другому смещению в ней (например, когда там более одного безусловного перехода), то L0m фиксирует промах, включает фронт и запишет поступившие мопы в новую порцию. Т. е. в кэше допустимы копии для порций с разными входами и одинаковым, точно известным выходом (помимо ещё нескольких возможных). А при вытеснении кода из L1I в L0m удаляются все строки, точки входа которых попадают в любой из 64-х байт двух порций. Кстати, в кэше трасс P4 тоже были возможны копии, причём они существенно уменьшали эффективность хранения кода…

Такие ограничения уменьшают доступность пространства L0m. Попробуем подсчитать, сколько же его остаётся для фактического использования. Средний размер команды x86-64 - 4 байта. Среднее число мопов на команду - 1,1. Т. е. на порцию скорее всего придётся 8–10 мопов, что составляет 2 строки. Как было ранее подсчитано, L0m сможет сохранить 128 таких пар, чего хватит на 4 КБ кода. Однако с учётом неидеального использования строк реальное число будет, видимо, 3–3,5 КБ. Интересно, как это вписывается в общий баланс объёмов кэшевой подсистемы?

  • 1 (фактически часть L3, в среднем приходящаяся на ядро) - 2 МБ;
  • L2 - 256 КБ, в 8 раз меньше;
  • оба L1 - по 32 КБ, в 8 раз меньше;
  • кэшируемый объём в L0m - примерно в 10 раз меньше.

Любопытно, что если найти в ядре ещё одну структуру, хранящую много команд или мопов, то ей окажется очередь ROB диспетчера, в которой умещается 168 мопов, генерируемые примерно 650–700 байтами кода, что в 5 раз меньше эффективного эквивалентного объёма L0m (3–3,5 КБ) и в 9 раз меньше полного (6 КБ). Таким образом, кэш мопов дополняет стройную иерархию различных хранилищ кода с разными, но хорошо сбалансированными параметрами. Intel утверждает, что в среднем 80% обращений попадают в L0m. Это значительно ниже цифры в 98–99% для кэша L1I на 32 КБ, но всё равно - в четырёх случаях из пяти кэш мопов оправдывает своё присутствие.

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

Итак, на этой неделе анонсировано аж 29 новых процессоров, 10 чипсетов и 4 беспроводных адаптера для ноутбуков и настольных рабочих и игровых компьютеров.

К мобильным новинкам относятся:

    процессоры Intel Core i7-2920XM, Core i7-2820QM, Core i7-2720QM, Core i7-2630QM, Core i7-2620M, Core i7-2649M, Core i7-2629M, Core i7-2657M, Core i7-2617M, Core i5-2540M, Core i5-2520M, Core i5-2410M, Core i5-2537M, Core i3-2310M;

    чипсеты Intel QS67, QM67, HM67, HM65, UM67 Express;

    беспроводные сетевые контроллеры Intel Centrino Advanced-N + WiMAX 6150, Centrino Advanced-N 6230, Centrino Advanced-N 6205, Centrino Wireless-N 1030.

В настольном же сегменте появятся:

    процессоры Intel Core i7-2600K, Core i7-2600S, Core i7-2600, Core i5-2500K, Core i5-2500S, Core i5-2500T, Core i5-2500, Core i5-2400, Core i5-2400S, Core i5-2390T, Core i5-2300;

    чипсеты Intel P67, H67, Q67, Q65, B65 Express.

Но сразу же стоит отметить, что анонс новой платформы не является одночастным для всех моделей процессоров и чипсетов – с начала января доступны только решения класса «майнстрим», а большинство более массовых и не таких дорогих появятся в продаже немного позднее. Вместе с выпуском настольных процессоров Sandy Bridge представлен и новый процессорный разъем для них LGA 1155 . Таким образом, новинки не дополняют модельный ряд Intel Core i3/i5/i7, а являются заменой для процессоров под LGA 1156, большинство из которых теперь становятся совсем неперспективным приобретением, ибо в ближайшее время их выпуск вообще должен прекратиться. И только для энтузиастов до конца года Intel обещает продолжать выпуск старших четырехъядерных моделей на ядре Lynnfield.

Однако, судя по «роадмапу» платформа долгожитель Socket T (LGA 775) все еще будет оставаться актуальной как минимум до середины года, являясь основой для систем начального уровня. Для наиболее же производительных игровых систем и настоящих энтузиастов до конца года будут актуальны процессоры на ядре Bloomfield по разъем LGA 1366. Как видим, жизненный цикл двухъядерных процессоров с «интегрированным» графическим адаптером на ядре Clarkdale оказался очень коротки, всего один год, но именно они «протоптали» дорожку для представленных «сегодня» Sandy Bridge, приучив потребителя к мысли, что в процессоре может быть интегрирован не только контроллер памяти, а и видеокарта. Теперь же пришло время не просто выпустить более быстрые версии подобных процессоров, серьезно обновить архитектуру, чтобы обеспечить заметное увеличение их эффективности.

Ключевыми особенностями процессоров архитектуры Sandy Bridge являются:

    выпуск с соблюдением 32 нм техпроцесса;

    заметно увеличившаяся энергоэффективность;

    оптимизированная технология Intel Turbo Boost и поддержка Intel Hyper-Threading;

    значительное увеличение производительности встроенного графического ядра;

    реализация нового набора инструкций Intel Advanced Vector Extension (AVX) для ускорения обработки вещественных чисел.

Но все вышеуказанные нововведения не обеспечивали бы возможности говорить о действительно новой архитектуре, если бы все это не было реализовано теперь в пределах одного ядра (кристалла), в отличие от процессоров на ядре Clarkdale.

Естественно, чтобы все узлы процессора заработали согласовано, нужно было организовать быстрый обмен информацией между ними – важным архитектурным нововведением стала кольцевая шина Ring Interconnect.

Объединяет же Ring Interconnect через кэш-память L3, теперь называемую LLC (Last Level Cache), процессорные ядра, графическое ядро и системный агент (System Agent), включающий в себя контроллер памяти, контроллер шины PCI Express, контроллер DMI, модуль управления питанием и другие контроллеры и модули, ранее имеющие объединенные названием «uncore».

Кольцевая шина Ring Interconnect является следующим этапом развития шины QPI (QuickPath Interconnect), которая после «обкатки» в серверных процессорах с обновленной 8-ядерной архитектурой Nehalem-EX, перекочевала и в ядро процессоров для настольных и мобильных систем. Посредством Ring Interconnect образуются четыре 32-разрядных кольца для шин Данных (Data Ring), Запросов (Request Ring), Мониторинга состояния (Snoop Ring) и Подтверждения (Acknowledge Ring). Функционирует кольцевая шина на частоте ядер, поэтому её пропускная способность, задержки и энергопотребление полностью зависят от частоты работы вычислительных блоков процессора.

Кэш-память третьего уровня (LLC - Last Level Cache) является общей для всех вычислительных ядер, графического ядра, системного агента и других блоков. При этом графический драйвер определяет какие потоки данных разместить в кэш-памяти, но и любой другой блок может получить доступ ко всем данным в LLC. Специальный механизм контролирует распределение кэш-памяти, чтобы не возникло коллизий. В целях ускорения работы для каждого из процессорных ядер выделен «свой» сегмент кэш-памяти, к которому оно имеет прямой доступ. Каждый такой сегмент включает независимый контроллер доступа к шине Ring Interconnect, но при этом ведется постоянное взаимодействие с системным агентом, который производит общее управление кэш-памятью.

Системный агент (System Agent), по сути, является встроенным в процессор «северным мостом» и объединяет контроллеры шин PCI Express, DMI, оперативной памяти, блок обработки видео (медиапроцессор и управление интерфейсами), диспетчер питания и другие вспомогательные блоки. С остальными узлами процессора системный агент взаимодействует через кольцевую шину. Кроме упорядочения потоков данных, системный агент следит за температурой и загрузкой различных блоков, и через Power Control Unit обеспечивает управление напряжением питания и частотами, дабы обеспечить наилучшую энергоэффективность при высокой производительности. Здесь же можно отметить, что для питания новых процессоров нужно трехкомпонентный стабилизатор питания (или двух, если встроенное видеоядро останется неактивным) – отдельно для вычислительных ядер, системного агента и интегрированной видеокарты.

Встроенная в процессор шина PCI Express соответствует спецификации 2.0 и насчитывает 16 линий для возможности увеличения мощности графической подсистемы при помощи мощного внешнего 3D-ускорителя. В случае использования старших наборов системной логики и согласования лицензионных вопросов эти 16 линий могут быть разделены на 2 или три слота в режимах 8x+8x или 8x+4x+4x соответственно для NVIDIA SLI и/или AMD CrossFireX.

Для обмена данными с системой (накопителями, портами ввода-вывода, периферией, контроллеры которых находятся в чипсете) используется шина DMI 2.0, позволяющая прокачать до 2 ГБ/с полезной информации в обоих направлениях.

Важной частью системного агента является встроенный в процессор двухканальный контроллер памяти DDR3, номинально поддерживающий модули на частоте 1066-1333 МГц, но при использовании в материнских платах на чипсете Intel P67 Express без проблем обеспечивающий функционирование модулей на частоте до 1600 и даже 2133 МГц. Размещение контроллера памяти в одном кристалле с процессорными ядрами (ядро Clarkdale состояло из двух кристаллов) должно уменьшить латентность памяти и, соответственно, увеличить производительность системы.

Отчасти благодаря расширенному мониторингу параметров всех вычислительных ядер, кэш-памяти и вспомогательных блоков, который реализован в Power Control Unit, в процессорах Sandy Bridge появилась усовершенствованная технология Intel Turbo Boost 2.0. Теперь, в зависимости от нагрузки и выполняемых задач, ядра процессора при высокой необходимости могут ускоряться даже с превышением теплового пакета, как при обычном ручном разгоне. Но системный агент будет следить за температурой процессора и его компонентов, и когда будет зафиксирован «перегрев» частоты узлов будут постепенно уменьшаться. Однако в настольных процессорах лимитировано время работы в сверхускоренном режиме, т.к. здесь значительно легче организовать в разы более эффективное охлаждение, чем «боксовый» кулер. Такой «овербуст» позволит получить прибавку производительности в критичные для системы моменты, что должно создать у пользователя впечатление работы с более мощной системой, а также уменьшить время ожидания реакции системы. Также Intel Turbo Boost 2.0 гарантирует, что и в настольных компьютерах встроенное видеоядро имеет динамическую производительность.

Архитектура процессоров Sandy Bridge подразумевает не только изменения в структуре межкомпонентного взаимодействия и улучшение возможностей и энергоэффективности этих компонентов, но и внутренние изменения в каждом вычислительном ядре. Если отбросить «косметические» улучшения, то наиболее важными окажутся следующие:

    возврат к выделению кэш-памяти для примерно 1,5 тысяч декодированных микроопераций L0 (использовался в Pentium 4), являющейся обособленной частью L1, что позволяет одновременно обеспечить более равномерную загрузку конвейеров и снизить энергопотребление вследствие увеличения пауз в работе достаточно сложных схем декодеров операций;

    повышение эффективности блока предсказания ветвлений вследствие увеличение емкости буферов адресов результатов ветвления, истории команд, истории ветвлений, что увеличило эффективность конвейеров;

    увеличение емкости буфера переупорядоченных команд (ROB - ReOrder Buffer) и повышение эффективности этой части процессора благодаря внедрению физического регистрового файла (PRF – Physical Register File, тоже характерной особенности Pentium 4) для хранения данных, а также расширение других буферов;

    удвоение емкости регистров для работы с потоковыми вещественными данными, что в ряде случаев может обеспечить в два раза большую скорость выполнения операций, их использующих;

    увеличение эффективности исполнения инструкций шифрования для алгоритмов AES, RSA и SHA;

    введение новых векторных инструкций Advanced Vector Extension (AVX);

  • оптимизацию работы кэш-памяти первого L1 и второго L2 уровней.

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

Однако самой архитектуре графического ядра не так много изменений, как того хотелось бы. Вместо ожидаемой поддержки DirectX 11 была просто добавлена поддержка DirectX 10.1. Соответственно и не многие приложения с поддержкой OpenGL ограничены аппаратной совместимостью только с 3-й версией спецификации этого свободного API. При этом, хотя и говорится об усовершенствовании вычислительных блоков, но их осталось столько же – 12, и то только для старших процессоров. Однако увеличение тактовой частоты до 1350 МГц обещает заметный прирост производительности в любом случае.

С другой стороны, создать встроенное видеоядро с действительно высокой производительностью и функциональностью для современных игр при невысоком его энергопотреблении очень тяжело. Поэтому отсутствие поддержки новых API повлияет лишь на совместимость с новыми играми, а производительность при действительно большом желании комфортно играть нужно будет наращивать с помощью дискретного 3D-ускорителя. А вот расширение функциональности при работе с мультимедийными данными, в первую очередь при кодировании и декодировании видео в рамках Intel Clear Video Technology HD, можно причислить к достоинствам Intel HD Graphics II (Intel HD Graphics 2000/3000).

Обновленный медиапроцессор позволяет разгрузить процессорные ядра при кодировании видео в форматах MPEG2 и H.264, а также расширяет набор пост-процессинговых функций аппаратной реализацией алгоритмов для автоматической подстройки контрастности изображения (ACE – Adaptive Contrast Enhancement), корректировки цветов (TCC – Total Color Control) и улучшения отображения кожи (STE – Skin Tone Enhancement). Повышает перспективность использования встроенной видеокарты реализованная поддержка интерфейса HDMI версии 1.4, совместимой с Blu-ray 3D (Intel InTru 3D).

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

В итоге платформа Intel LGA 1155 становится более производительной и функциональной, приходя на смену LGA 1156.

Если подытожить, то процессоры семейства Sandy Bridge спроектированы для решения очень широкого круга задач при высокой энергоэффективности, что должно их сделать действительно массовыми в новых производительных системах, особенно когда в продаже появятся более доступные модели в широком ассортименте.

В ближайшее время постепенно покупателям станут доступны 8 процессоров для настольных систем разного уровня: Intel Core i7-2600K, Intel Core i7-2600, Intel Core i5-2500K, Intel Core i5-2500, Intel Core i5-2400, Intel Core i5-2300, Intel Core i3-2120 и Intel Core i3-2100. Модели с индексом K отличаются свободным множителем и более быстрым встроенным видеоадаптером Intel HD Graphics 3000.

Также для критичных к энергопотреблению систем выпущены энергоэффективные (индекс S) и высокоэнергоэффективные (индекс T) модели.

Для поддержки новых процессоров уже сегодня доступны материнские платы на чипсетах Intel P67 Express и Intel H67 Express, в а недалеком будущем ожидаются на Intel Q67 Express и Intel B65 Express, ориентированные на корпоративных пользователей и малый бизнес. Все эти чипсеты наконец-то начали поддерживать накопители с интерфейсом SATA 3.0, хотя и не всеми портами. А вот поддержки, казалось бы даже более востребованной шины USB 3.0 в них нет. Интересными особенностями новых чипсетов для обычных материнских плат стало то, что в них отказались от поддержки шины PCI. Кроме того, теперь тактовый генератор встроен в чипсет и управлять его характеристиками без последствий для стабильности работы системы можно лишь в очень небольшом диапазоне, если повезет то всего ±10 МГц, а на практике и того меньше.

Также нужно отметить, что разные чипсеты оптимизированы под использование с разными процессорами в системах, предназначенных для различных целей. То есть Intel P67 Express от Intel H67 Express отличается не только отсутствием поддержки работы со встроенным видео, но и расширенными возможностями для «оверклокинга» и тюнинга производительности. В свою очередь Intel H67 Express вообще не замечает свободный множитель у моделей с индексом K.

А ведь вследствие архитектурных особенностей, разгон процессоров Sandy Bridge пока возможен только с помощью множителя, если это модель K-серии. Хотя к некоторой оптимизации и «овербусту» склонны все модели.

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

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

Для высокопроизводительных и массовых производительных систем в ближайшее время можно будет купить процессоры серий Intel Core i7 и Intel Core i5, которые между собой отличаются поддержкой технологии Intel Hyper-Threading (для четырехъядерных моделей Intel Core i5 она отключена) и объемом кэш-памяти третьего уровня. Для более экономных покупателей представлены новые модели Intel Core i3, которые имеют в 2 раза меньше вычислительных ядер, хоть и с поддержкой Intel Hyper-Threading, всего 3 МБ кэш-памяти LLC, не поддерживают Intel Turbo Boost 2.0 и все укомплектованы Intel HD Graphics 2000.

В середине года для массовых систем будут представлены процессоры Intel Pentium (от этого бренда очень тяжело отказаться, хотя еще год назад это пророчили) на основе очень упрощенной архитектуры Sandy Bridge. Фактически эти процессоры для «рабочих лошадок» будут напоминать по возможностям еще вчера актуальные Core i3-3xx на ядре Clarkdale, т.к. практически всех функций, присущих старшим моделям для LGA 1155, они лишатся.

Остается отметить, что выпуск процессоров Sandy Bridge и целой настольной платформы LGA 1155 стал очередным «Так» в рамках концепции Intel «Тик-Так», т.е. серьезным обновлением архитектуры для выпуска по уже отлаженному 32 нм техпроцессу. Примерно через год нас будут ждать процессоры Ivy Bridge с оптимизированной архитектурой и выполненные по 22 нм техпроцессу, которые, наверняка, снова будут иметь «революционную энергоэффективность», но, надеемся, не упразднят процессорный разъем LGA 1155. Что ж, подождем – увидим. А пока у нас есть минимум год на изучение архитектуры Sandy Bridge и её всестороннее тестирование, к чему и собираемся приступить уже в ближайшие дни .

Статья прочитана 14572 раз(а)

Подписаться на наши каналы

ВведениеЭтим летом компания Intel совершила странное: она умудрилась сменить целых два поколения процессоров, ориентированных на общеупотребительные персональные компьютеры. Сначала на смену Haswell пришли процессоры с микроархитектурой Broadwell, но затем в течение буквально пары месяцев они утратили свой статус новинки и уступили место процессорам Skylake, которые будут оставаться наиболее прогрессивными CPU как минимум ещё года полтора. Такая чехарда со сменой поколений произошла главным образом в связи с проблемами Intel, возникшими при внедрении нового 14-нм техпроцесса, который применяется при производстве и Broadwell, и Skylake. Производительные носители микроархитектуры Broadwell по пути в настольные системы сильно задержались, а их последователи вышли по заранее намеченному графику, что привело к скомканности анонса процессоров Core пятого поколения и серьёзному сокращению их жизненного цикла. В результате всех этих пертурбаций, в десктопном сегменте Broadwell заняли совсем узкую нишу экономичных процессоров с мощным графическим ядром и довольствуются теперь лишь небольшим уровнем продаж, свойственным узкоспециализированным продуктам. Внимание же передовой части пользователей переключилось на последователей Broadwell – процессоры Skylake.

Надо заметить, что в последние несколько лет компания Intel совсем не радует своих поклонников ростом производительности предлагаемых продуктов. Каждое новое поколение процессоров прибавляет в удельном быстродействии лишь по несколько процентов, что в конечном итоге приводит к отсутствию у пользователей явных стимулов к модернизации старых систем. Но выход Skylake – поколения CPU, по пути к которому Intel, фактически, перепрыгнула через ступеньку – внушал определённые надежды на то, что мы получим действительно стоящее обновление самой распространённой вычислительной платформы. Однако, ничего подобного так и не случилось: Intel выступила в своём привычном репертуаре. Broadwell был представлен общественности в качестве некого ответвления от основной линии процессоров для настольных систем, а Skylake оказались быстрее Haswell в большинстве приложений совсем незначительно .

Поэтому несмотря на все ожидания, появление Skylake в продаже вызвало у многих скептическое отношение. Ознакомившись с результатами реальных тестов, многие покупатели попросту не увидели реального смысла в переходе на процессоры Core шестого поколения. И действительно, главным козырем свежих CPU выступает прежде всего новая платформа с ускоренными внутренними интерфейсами, но не новая процессорная микроархитектура. И это значит, что реальных стимулов к обновлению основанных систем прошлых поколений Skylake предлагает немного.

Впрочем, мы бы всё-таки не стали отговаривать от перехода Skylake всех без исключения пользователей. Дело в том, что пусть Intel и наращивает производительность своих процессоров очень сдержанными темпами, с момента появления Sandy Bridge, которые всё ещё трудятся во многих системах, сменилось уже четыре поколения микроархитектуры. Каждый шаг по пути прогресса вносил свой вклад в увеличение производительности, и к сегодняшнему дню Skylake способен предложить достаточно существенный прирост в производительности по сравнению со своими более ранними предшественниками. Только чтобы увидеть это, сравнивать его надо не с Haswell, а с более ранними представителями семейства Core, появившимися до него.

Собственно, именно таким сравнением мы сегодня и займёмся. Учитывая всё сказанное, мы решили посмотреть, насколько выросла производительность процессоров Core i7 с 2011 года, и собрали в едином тесте старшие Core i7, относящиеся к поколениям Sandy Bridge, Ivy Bridge, Haswell, Broadwell и Skylake. Получив же результаты такого тестирования, мы постараемся понять, обладателям каких процессоров целесообразно затевать модернизацию старых систем, а кто из них может повременить до появления последующих поколений CPU. Попутно мы посмотрим и на уровень производительности новых процессоров Core i7-5775C и Core i7-6700K поколений Broadwell и Skylake, которые до настоящего момента в нашей лаборатории ещё не тестировались.

Сравнительные характеристики протестированных CPU

От Sandy Bridge до Skylake: сравнение удельной производительности

Для того, чтобы вспомнить, как же менялась удельная производительность интеловских процессоров в течение последней пятилетки, мы решили начать с простого теста, в котором сопоставили скорость работы Sandy Bridge, Ivy Bridge, Haswell, Broadwell и Skylake, приведённых к одной и той же частоте 4,0 ГГц. В этом сравнении нами были использованы процессоры линейки Core i7, то есть, четырёхъядерники, обладающие технологией Hyper-Threading.

В качестве основного тестового инструмента был взят комплексный тест SYSmark 2014 1.5, который хорош тем, что воспроизводит типичную пользовательскую активность в общеупотребительных приложениях офисного характера, при создании и обработке мультимедийного контента и при решении вычислительных задач. На следующих графиках отображены полученные результаты. Для удобства восприятия они нормированы, за 100 процентов принята производительность Sandy Bridge.



Интегральный показатель SYSmark 2014 1.5 позволяет сделать следующие наблюдения. Переход от Sandy Bridge к Ivy Bridge увеличил удельную производительность совсем незначительно – примерно на 3-4 процента. Дальнейший шаг к Haswell оказался гораздо более результативным, он вылился в 12-процентное улучшение производительности. И это – максимальный прирост, который можно наблюдать на приведённом графике. Ведь дальше Broadwell обгоняет Haswell всего лишь на 7 процентов, а переход от Broadwell к Skylake и вовсе наращивает удельную производительность лишь на 1-2 процента. Весь же прогресс от Sandy Bridge до Skylake выливается в 26-процентное увеличение производительности при постоянстве тактовых частот.

Более подробную расшифровку полученных показателей SYSmark 2014 1.5 можно посмотреть на трёх следующих графиках, где интегральный индекс производительности разложен по составляющим по типу приложений.









Обратите внимание, наиболее заметно с вводом новых версий микроархитектур прибавляют в скорости исполнения мультимедийные приложения. В них микроархитектура Skylake превосходит Sandy Bridge на целых 33 процента. А вот в счётных задачах, напротив, прогресс проявляется меньше всего. И более того, при такой нагрузке шаг от Broadwell к Skylake даже оборачивается небольшим снижением удельной производительности.

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

От Sandy Bridge до Skylake: что изменилось в процессорах Intel

Сделать точкой отсчёта в сравнении разных Core i7 представителя поколения Sandy Bridge мы решили не просто так. Именно данный дизайн подвёл крепкий фундамент под всё дальнейшее совершенствование производительных интеловских процессоров вплоть до сегодняшних Skylake. Так, представители семейства Sandy Bridge стали первыми высокоинтегрированными CPU, в которых в одном полупроводниковом кристалле были собраны и вычислительные, и графическое ядра, а также северный мост с L3-кешем и контроллером памяти. Кроме того, в них впервые стала использоваться внутренняя кольцевая шина, посредством которой была решена задача высокоэффективного взаимодействия всех структурных единиц, составляющих столь сложный процессор. Этим заложенным в микроархитектуре Sandy Bridge универсальным принципам построения продолжают следовать все последующие поколения CPU без каких бы то ни было серьёзных корректив.

Немалые изменения в Sandy Bridge претерпела внутренняя микроархитектура вычислительных ядер. В ней не только была реализована поддержка новых наборов команд AES-NI и AVX, но и нашли применение многочисленные крупные улучшения в недрах исполнительного конвейера. Именно в Sandy Bridge был добавлен отдельный кеш нулевого уровня для декодированных инструкций; появился абсолютно новый блок переупорядочивания команд, основанный на использовании физического регистрового файла; были заметно улучшены алгоритмы предсказания ветвлений; а кроме того, два из трёх исполнительных порта для работы с данными стали унифицированными. Такие разнородные реформы, проведённые сразу на всех этапах конвейера, позволили серьёзно увеличить удельную производительность Sandy Bridge, которая по сравнению с процессорами предыдущего поколения Nehalem сразу выросла почти на 15 процентов. К этому добавился 15-процентный рост номинальных тактовых частот и отличный разгонный потенциал, в результате чего в сумме получилось семейство процессоров, которое до сих пор ставится в пример Intel, как образцовое воплощение фазы «так» в принятой в компании маятниковой концепции разработки.

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

Отлично иллюстрирует произошедший спад интенсивности инноваций переход от Sandy Bridge к Ivy Bridge. Несмотря на то, что следующее за Sandy Bridge поколение процессоров и было переведено на новую производственную технологию с 22-нм нормами, его тактовые частоты совсем не выросли. Сделанные же улучшения в дизайне в основном коснулись ставшего более гибким контроллера памяти и контроллера шины PCI Express, который получил совместимость с третьей версией данного стандарта. Что же касается непосредственно микроархитектуры вычислительных ядер, то отдельные косметические переделки позволили добиться ускорения выполнения операций деления и небольшого увеличения эффективности технологии Hyper-Threading, да и только. В результате, рост удельной производительности составил не более 5 процентов.

Вместе с тем, внедрение Ivy Bridge принесло и то, о чём теперь горько жалеет миллионная армия оверклокеров. Начиная с процессоров этого поколения, Intel отказалась от сопряжения полупроводникового кристалла CPU и закрывающей его крышки посредством бесфлюсовой пайки и перешла на заполнение пространства между ними полимерным термоинтерфейсным материалом с очень сомнительными теплопроводящими свойствами. Это искусственно ухудшило частотный потенциал и сделало процессоры Ivy Bridge, как и всех их последователей, заметно менее разгоняемыми по сравнению с очень бодрыми в этом плане «старичками» Sandy Bridge.

Впрочем, Ivy Bridge – это всего лишь «тик», а потому особых прорывов в этих процессорах никто и не обещал. Однако никакого воодушевляющего роста производительности не принесло и следующее поколение, Haswell, которое, в отличие от Ivy Bridge, относится уже к фазе «так». И это на самом деле немного странно, поскольку различных улучшений в микроархитектуре Haswell сделано немало, причём они рассредоточены по разным частям исполнительного конвейера, что в сумме вполне могло бы увеличить общий темп исполнения команд.

Например, во входной части конвейера была улучшена результативность предсказания переходов, а очередь декодированных инструкций стала делиться между параллельными потоками, сосуществующими в рамках технологии Hyper-Threading, динамически. Попутно произошло увеличение окна внеочередного исполнения команд, что в сумме должно было поднять долю параллельно выполняемого процессором кода. Непосредственно в исполнительном блоке были добавлены два дополнительных функциональных порта, нацеленных на обработку целочисленных команд, обслуживание ветвлений и сохранение данных. Благодаря этому Haswell стал способен обрабатывать до восьми микроопераций за такт – на треть больше предшественников. Более того, новая микроархитектура удвоила и пропускную способность кеш-памяти первого и второго уровней.

Таким образом, улучшения в микроархитектуре Haswell не затронули лишь скорость работы декодера, который, похоже, на данный момент стал самым узким местом в современных процессорах Core. Ведь несмотря на внушительный список улучшений, прирост удельной производительности у Haswell по сравнению с Ivy Bridge составил лишь около 5-10 процентов. Но справедливости ради нужно оговориться, что на векторных операциях ускорение заметно гораздо сильнее. А наибольший выигрыш можно увидеть в приложениях, использующих новые AVX2 и FMA-команды, поддержка которых также появилась в этой микроархитектуре.

Процессоры Haswell, как и Ivy Bridge, сперва тоже не особенно понравились энтузиастам. Особенно если учесть тот факт, что в первоначальной версии никакого увеличения тактовых частот они не предложили. Однако спустя год после своего дебюта Haswell стали казаться заметно привлекательнее. Во-первых, увеличилось количество приложений, обращающихся к наиболее сильным сторонам этой архитектуры и использующих векторные инструкции. Во-вторых, Intel смогла исправить ситуацию с частотами. Более поздние модификации Haswell, получившие собственное кодовое наименование Devil’s Canyon, смогли нарастить преимущество над предшественниками благодаря увеличению тактовой частоты, которая, наконец, пробила 4-гигагерцовый потолок. Кроме того, идя на поводу у оверклокеров, Intel улучшила полимерный термоинтерфейс под процессорной крышкой, что сделало Devil’s Canyon более подходящими объектами для разгона. Конечно, не такими податливыми, как Sandy Bridge, но тем не менее.

И вот с таким багажом Intel подошла к Broadwell. Поскольку основной ключевой особенностью этих процессоров должна была стать новая технология производства с 14-нм нормами, никаких значительных нововведений в их микроархитектуре не планировалось – это должен был быть почти самый банальный «тик». Всё необходимое для успеха новинок вполне мог бы обеспечить один только тонкий техпроцесс с FinFET-транзисторами второго поколения, в теории позволяющий уменьшить энергопотребление и поднять частоты. Однако практическое внедрение новой технологии обернулось чередой неудач, в результате которых Broadwell досталась лишь экономичность, но не высокие частоты. В итоге те процессоры этого поколения, которые Intel представила для настольных систем, вышли больше похожими на мобильные CPU, чем на продолжателей дела Devil’s Canyon. Тем более, что кроме урезанных тепловых пакетов и откатившихся частот они отличаются от предшественников и уменьшившимся в объёме L3-кешем, что, правда, несколько компенсируется появлением расположенного на отдельном кристалле кэша четвёртого уровня.

На одинаковой с Haswell частоте процессоры Broadwell демонстрируют примерно 7-процентное преимущество, обеспечиваемое как добавлением дополнительного уровня кеширования данных, так и очередным улучшением алгоритма предсказания ветвлений вместе с увеличением основных внутренних буферов. Кроме того, в Broadwell реализованы новые и более быстрые схемы выполнения инструкций умножения и деления. Однако все эти небольшие улучшения перечёркиваются фиаско с тактовыми частотами, относящими нас в эпоху до Sandy Bridge. Так, например, старший оверклокерский Core i7-5775C поколения Broadwell уступает по частоте Core i7-4790K целых 700 МГц. Понятно, что ожидать какого-то роста производительности на этом фоне бессмысленно, лишь бы обошлось без её серьёзного падения.

Во многом именно из-за этого Broadwell и оказался непривлекательным для основной массы пользователей. Да, процессоры этого семейства отличаются высокой экономичностью и даже вписываются в тепловой пакет с 65-ваттными рамками, но кого это, по большому счёту, волнует? Разгонный же потенциал первого поколения 14-нм CPU оказался достаточно сдержанным. Ни о какой работе на частотах, приближающихся к 5-гигагерцовой планке речь не идёт. Максимум, которого можно добиться от Broadwell при использовании воздушного охлаждения пролегает в окрестности величины 4,2 ГГц. Иными словами, пятое поколение Core вышло у Intel, как минимум, странноватым. О чём, кстати, микропроцессорный гигант в итоге и пожалел: представители Intel отмечают, что поздний выход Broadwell для настольных компьютеров, его сокращённый жизненный цикл и нетипичные характеристики отрицательно сказались на уровне продаж, и больше компания на подобные эксперименты пускаться не планирует.

Новейший же Skylake на этом фоне представляется не столько как дальнейшее развитие интеловской микроархитектуры, сколько своего рода работа над ошибками. Несмотря на то, что при производстве этого поколения CPU используется тот же 14-нм техпроцесс, что и в случае Broadwell, никаких проблем с работой на высоких частотах у Skylake нет. Номинальные частоты процессоров Core шестого поколения вернулись к тем показателям, которые были свойственны их 22-нм предшественникам, а разгонный потенциал даже немного увеличился. На руку оверклокерам здесь сыграл тот факт, что в Skylake конвертер питания процессора вновь перекочевал на материнскую плату и снизил тем самым суммарное тепловыделение CPU при разгоне. Жаль только, что Intel так и не вернулась к использованию эффективного термоинтерфейса между кристаллом и процессорной крышкой.

Но вот что касается базовой микроархитектуры вычислительных ядер, то несмотря на то, что Skylake, как и Haswell, представляет собой воплощение фазы «так», нововведений в ней совсем немного. Причём большинство из них направлено на расширение входной части исполнительного конвейера, остальные же части конвейера остались без каких-либо существенных изменений. Перемены касаются улучшения результативности предсказания ветвлений и повышения эффективности блока предварительной выборки, да и только. При этом часть оптимизаций служит не столько для улучшения производительности, сколько направлена на очередное повышение энергоэффективности. Поэтому удивляться тому, что Skylake по своей удельной производительности почти не отличается от Broadwell, не следует.

Впрочем, существуют и исключения: в отдельных случаях Skylake могут превосходить предшественников в производительности и более заметно. Дело в том, что в этой микроархитектуре была усовершенствована подсистема памяти. Внутрипроцессорная кольцевая шина стала быстрее, и это в конечном итоге расширило полосу пропускания L3-кэша. Плюс к этому контроллер памяти получил поддержку работающей на высоких частотах памяти стандарта DDR4 SDRAM.

Но в итоге тем не менее получается, что бы там не говорила Intel о прогрессивности Skylake, с точки зрения обычных пользователей это – достаточно слабое обновление. Основные улучшения в Skylake сделаны в графическом ядре и в энергоэффективности, что открывает перед такими CPU путь в безвентиляторные системы планшетного форм-фактора. Десктопные же представители этого поколения отличаются от тех же Haswell не слишком заметно. Даже если закрыть глаза на существование промежуточного поколения Broadwell, и сопоставлять Skylake напрямую с Haswell, то наблюдаемый рост удельной производительности составит порядка 7-8 процентов, что вряд ли можно назвать впечатляющим проявлением технического прогресса.

Попутно стоит отметить, что не оправдывает ожиданий и совершенствование технологических производственных процессов. На пути от Sandy Bridge дo Skylake компания Intel сменила две полупроводниковых технологии и уменьшила толщину транзисторных затворов более чем вдвое. Однако современный 14-нм техпроцесс по сравнению с 32-нм технологией пятилетней давности так и не позволил нарастить рабочие частоты процессоров. Все процессоры Core последних пяти поколений имеют очень похожие тактовые частоты, которые если и превышают 4-гигагерцовую отметку, то совсем незначительно.

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



Более того, пик тактовой частоты приходится даже не на Skylake. Максимальной частотой могут похвастать процессоры Haswell, относящиеся к подгруппе Devil’s Canyon. Их номинальная частота составляет 4,0 ГГц, но благодаря турбо-режиму в реальных условиях они способны разгоняться до 4,4 ГГц. Для современных же Skylake максимум частоты – всего лишь 4,2 ГГц.

Всё это, естественно, сказывается на итоговой производительности реальных представителей различных семейств CPU. И далее мы предлагаем посмотреть, как всё это отражается на быстродействии платформ, построенных на базе флагманских процессоров каждого из семейств Sandy Bridge, Ivy Bridge, Haswell, Broadwell и Skylake.

Как мы тестировали

В сравнении приняли участие пять процессоров Core i7 разных поколений: Core i7-2700K, Core i7-3770K, Core i7-4790K, Core i7-5775C и Core i7-6700K. Поэтому список комплектующих, задействованных в тестировании, получился достаточно обширным:

Процессоры:

Intel Core i7-2600K (Sandy Bridge, 4 ядра + HT, 3,4-3,8 ГГц, 8 Мбайт L3);
Intel Core i7-3770K (Ivy Bridge, 4 ядра + HT, 3,5-3,9 ГГц, 8 Мбайт L3);
Intel Core i7-4790K (Haswell Refresh, 4 ядра + HT, 4,0-4,4 ГГц, 8 Мбайт L3);
Intel Core i7-5775C (Broadwell, 4 ядра, 3,3-3,7 ГГц, 6 Мбайт L3, 128 Мбайт L4).
Intel Core i7-6700K (Skylake, 4 ядра, 4,0-4,2 ГГц, 8 Мбайт L3).

Процессорный кулер: Noctua NH-U14S.
Материнские платы:

ASUS Z170 Pro Gaming (LGA 1151, Intel Z170);
ASUS Z97-Pro (LGA 1150, Intel Z97);
ASUS P8Z77-V Deluxe (LGA1155, Intel Z77).

Память:

2x8 Гбайт DDR3-2133 SDRAM, 9-11-11-31 (G.Skill F3-2133C9D-16GTX);
2x8 Гбайт DDR4-2666 SDRAM, 15-15-15-35 (Corsair Vengeance LPX CMK16GX4M2A2666C16R).

Видеокарта: NVIDIA GeForce GTX 980 Ti (6 Гбайт/384-бит GDDR5, 1000-1076/7010 МГц).
Дисковая подсистема: Kingston HyperX Savage 480 GB (SHSS37A/480G).
Блок питания: Corsair RM850i (80 Plus Gold, 850 Вт).

Тестирование выполнялось в операционной системе Microsoft Windows 10 Enterprise Build 10240 с использованием следующего комплекта драйверов:

Intel Chipset Driver 10.1.1.8;
Intel Management Engine Interface Driver 11.0.0.1157;
NVIDIA GeForce 358.50 Driver.

Производительность

Общая производительность

Для оценки производительности процессоров в общеупотребительных задачах мы традиционно используем тестовый пакет Bapco SYSmark, моделирующий работу пользователя в реальных распространённых современных офисных программах и приложениях для создания и обработки цифрового контента. Идея теста очень проста: он выдаёт единственную метрику, характеризующую средневзвешенную скорость компьютера при повседневном использовании. После выхода операционной системы Windows 10 этот бенчмарк в очередной раз обновился, и теперь мы задействуем самую последнюю версию – SYSmark 2014 1.5.



При сравнении Core i7 разных поколений, когда они работают в своих номинальных режимах, результаты получаются совсем не такие, как при сопоставлении на единой тактовой частоте. Всё-таки реальная частота и особенности работы турбо-режима оказывает достаточно существенное влияние на производительность. Например, согласно полученным данным, Core i7-6700K быстрее Core i7-5775C на целых 11 процентов, но при этом его преимущество над Core i7-4790K совсем незначительно – оно составляет всего лишь порядка 3 процентов. При этом нельзя обойти вниманием и то, что новейший Skylake оказывается существенно быстрее процессоров поколений Sandy Bridge и Ivy Bridge. Его преимущество над Core i7-2700K и Core i7-3770K достигает 33 и 28 процентов соответственно.

Более глубокое понимание результатов SYSmark 2014 1.5 способно дать знакомство с оценками производительности, получаемое в различных сценариях использования системы. Сценарий Office Productivity моделирует типичную офисную работу: подготовку текстов, обработку электронных таблиц, работу с электронной почтой и посещение Интернет-сайтов. Сценарий задействует следующий набор приложений: Adobe Acrobat XI Pro, Google Chrome 32, Microsoft Excel 2013, Microsoft OneNote 2013, Microsoft Outlook 2013, Microsoft PowerPoint 2013, Microsoft Word 2013, WinZip Pro 17.5 Pro.



В сценарии Media Creation моделируется создание рекламного ролика с использованием предварительно отснятых цифровых изображений и видео. Для этой цели применяются популярные пакеты Adobe Photoshop CS6 Extended, Adobe Premiere Pro CS6 и Trimble SketchUp Pro 2013.



Сценарий Data/Financial Analysis посвящён статистическому анализу и прогнозированию инвестиций на основе некой финансовой модели. В сценарии используются большие объёмы численных данных и два приложения Microsoft Excel 2013 и WinZip Pro 17.5 Pro.



Результаты, полученные нами при различных сценариях нагрузки, качественно повторяют общие показатели SYSmark 2014 1.5. Обращает на себя внимание лишь тот факт, что процессор Core i7-4790K совсем не выглядит устаревшим. Он заметно проигрывает новейшему Core i7-6700K только в расчётном сценарии Data/Financial Analysis, а в остальных случаях либо уступает своему последователю на совсем малозаметную величину, либо вообще оказывается быстрее. Например, представитель семейства Haswell опережает новый Skylake в офисных приложениях. Но процессоры более старых годов выпуска, Core i7-2700K и Core i7-3770K, выглядят уже несколько устаревшими предложениями. Они проигрывают новинке в разных типах задач от 25 до 40 процентов, и это, пожалуй, является вполне достаточным основанием, чтобы Core i7-6700K можно было рассматривать в качестве достойной им замены.

Игровая производительность

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

Впрочем, в этом тестировании мы собрали мощную графическую подсистему, основанную на флагманской видеокарте NVIDIA GeForce GTX 980 Ti. И в результате в части игр частота кадров продемонстрировала зависимость от процессорной производительности даже в FullHD-разрешении.

Результаты в FullHD-разрешении с максимальными настройками качества


















Обычно влияние процессоров на игровую производительность, особенно если речь идёт о мощных представителях серии Core i7, оказывается незначительным. Однако при сопоставлении пяти Core i7 разных поколений результаты получаются совсем не однородными. Даже при установке максимальных настроек качества графики Core i7-6700K и Core i7-5775C демонстрируют наивысшую игровую производительность, в то время как более старые Core i7 от них отстают. Так, частота кадров, которая получена в системе с Core i7-6700K превышает производительность системы на базе Core i7-4770K на малозаметный один процент, но процессоры Core i7-2700K и Core i7-3770K представляются уже ощутимо худшей основой геймерской системы. Переход с Core i7-2700K или Core i7-3770K на новейший Core i7-6700K даёт прибавку в числе fps величиной в 5-7 процентов, что способно оказать вполне заметное влияние на качество игрового процесса.

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

Результаты при сниженном разрешении


















Новейшему процессору Core i7-6700K вновь удаётся показать наивысшую производительность среди всех Core i7 последних поколений. Его превосходство над Core i7-5775C составляет порядка 5 процентов, а над Core i7-4690K – около 10 процентов. В этом нет ничего странного: игры достаточно чутко реагируют на скорость подсистемы памяти, а именно по этому направлению в Skylake были сделаны серьёзные улучшения. Но гораздо заметнее превосходство Core i7-6700K над Core i7-2700K и Core i7-3770K. Старший Sandy Bridge отстаёт от новинки на 30-35 процентов, а Ivy Bridge проигрывает ей в районе 20-30 процентов. Иными словами, как бы ни ругали Intel за слишком медленное совершенствование собственных процессоров, компания смогла за прошедшие пять лет на треть повысить скорость работы своих CPU, а это – очень даже ощутимый результат.

Тестирование в реальных играх завершают результаты популярного синтетического бенчмарка Futuremark 3DMark.









Вторят игровым показателям и те результаты, которые выдаёт Futuremark 3DMark. При переводе микроархитектуры процессоров Core i7 c Sandy Bridge на Ivy Bridge показатели 3DMark выросли на величину от 2 до 7 процентов. Внедрение дизайна Haswell и выпуск процессоров Devil’s Canyon добавил к производительности старших Core i7 дополнительные 7-14 процентов. Однако потом появление Core i7-5775C, обладающего сравнительно невысокой тактовой частотой, несколько откатило быстродействие назад. И новейшему Core i7-6700K, фактически, пришлось отдуваться сразу за два поколения микроархитектуры. Прирост в итоговом рейтинге 3DMark у нового процессора семейства Skylake по сравнению с Core i7-4790K составил до 7 процентов. И на самом деле это не так много: всё-таки самое заметное улучшение производительности за последние пять лет смогли привнести процессоры Haswell. Последние же поколения десктопных процессоров, действительно, несколько разочаровывают.

Тесты в приложениях

В Autodesk 3ds max 2016 мы тестируем скорость финального рендеринга. Измеряется время, затрачиваемое на рендеринг в разрешении 1920x1080 с применением рендерера mental ray одного кадра стандартной сцены Hummer.



Ещё один тест финального рендеринга проводится нами с использованием популярного свободного пакета построения трёхмерной графики Blender 2.75a. В нём мы измеряем продолжительность построения финальной модели из Blender Cycles Benchmark rev4.



Для измерения скорости фотореалистичного трёхмерного рендеринга мы воспользовались тестом Cinebench R15. Maxon недавно обновила свой бенчмарк, и теперь он вновь позволяет оценить скорость работы различных платформ при рендеринге в актуальных версиях анимационного пакета Cinema 4D.



Производительность при работе веб-сайтов и интернет-приложений, построенных с использованием современных технологий, измеряется нами в новом браузере Microsoft Edge 20.10240.16384.0. Для этого применяется специализированный тест WebXPRT 2015, реализующий на HTML5 и JavaScript реально использующиеся в интернет-приложениях алгоритмы.



Тестирование производительности при обработке графических изображений происходит в Adobe Photoshop CC 2015. Измеряется среднее время выполнения тестового скрипта, представляющего собой творчески переработанный Retouch Artists Photoshop Speed Test, который включает типичную обработку четырёх 24-мегапиксельных изображений, сделанных цифровой камерой.



По многочисленным просьбам фотолюбителей мы провели тестирование производительности в графической программе Adobe Photoshop Lightroom 6.1. Тестовый сценарий включает пост-обработку и экспорт в JPEG с разрешением 1920x1080 и максимальным качеством двухсот 12-мегапиксельных изображений в RAW-формате, сделанных цифровой камерой Nikon D300.



В Adobe Premiere Pro CC 2015 тестируется производительность при нелинейном видеомонтаже. Измеряется время рендеринга в формат H.264 Blu-Ray проекта, содержащего HDV 1080p25 видеоряд с наложением различных эффектов.



Для измерения быстродействия процессоров при компрессии информации мы пользуемся архиватором WinRAR 5.3, при помощи которого с максимальной степенью сжатия архивируем папку с различными файлами общим объёмом 1,7 Гбайт.



Для оценки скорости перекодирования видео в формат H.264 используется тест x264 FHD Benchmark 1.0.1 (64bit), основанный на измерении времени кодирования кодером x264 исходного видео в формат MPEG-4/AVC с разрешением 1920x1080@50fps и настройками по умолчанию. Следует отметить, что результаты этого бенчмарка имеют огромное практическое значение, так как кодер x264 лежит в основе многочисленных популярных утилит для перекодирования, например, HandBrake, MeGUI, VirtualDub и проч. Мы периодически обновляем кодер, используемый для измерений производительности, и в данном тестировании приняла участие версия r2538, в которой реализована поддержка всех современных наборов инструкций, включая и AVX2.



Кроме того, мы добавили в список тестовых приложений и новый кодер x265, предназначенный для транскодирования видео в перспективный формат H.265/HEVC, который является логическим продолжением H.264 и характеризуется более эффективными алгоритмами сжатия. Для оценки производительности используется исходный 1080p@50FPS Y4M-видеофайл, который перекодируется в формат H.265 с профилем medium. В этом тестировании принял участие релиз кодера версии 1.7.



Преимущество Core i7-6700K над ранними предшественниками в различных приложениях не подлежит сомнению. Однако больше всего выиграли от произошедшей эволюции два типа задач. Во-первых, связанные с обработкой мультимедийного контента, будь то видео или изображения. Во-вторых, финальный рендеринг в пакетах трёхмерного моделирования и проектирования. В целом, в таких случаях Core i7-6700K превосходит Core i7-2700K не менее, чем на 40-50 процентов. А иногда можно наблюдать и гораздо более впечатляющее улучшение скорости. Так, при перекодировании видео кодеком x265 новейший Core i7-6700K выдаёт ровно вдвое более высокую производительность, чем старичок Core i7-2700K.

Если же говорить о том приросте в скорости выполнения ресурсоёмких задач, которую может обеспечить Core i7-6700K по сравнению с Core i7-4790K, то тут уже столь впечатляющих иллюстраций к результатам работы интеловских инженеров привести нельзя. Максимальное преимущество новинки наблюдается в Lightroom, здесь Skylake оказался лучше в полтора раза. Но это скорее – исключение из правила. В большинстве же мультимедийных задач Core i7-6700K по сравнению с Core i7-4790K предлагает лишь 10-процентное улучшение производительности. А при нагрузке иного характера разница в быстродействии и того меньше или же вообще отсутствует.

Отдельно нужно сказать пару слов и о результате, показанном Core i7-5775C. Из-за небольшой тактовой частоты этот процессор медленнее, чем Core i7-4790K и Core i7-6700K. Но не стоит забывать о том, что его ключевой характеристикой является экономичность. И он вполне способен стать одним из лучших вариантов с точки зрения удельной производительности на каждый ватт затраченной электроэнергии. В этом мы легко убедимся в следующем разделе.

Энергопотребление

Процессоры Skylake производятся по современному 14-нм технологическому процессу с трёхмерными транзисторами второго поколения, однако, несмотря на это, их тепловой пакет вырос до 91 Вт. Иными словами, новые CPU не только «горячее» 65-ваттных Broadwell, но и превосходят по расчётному тепловыделению Haswell, выпускаемые по 22-нм технологии и уживающиеся в рамках 88-ваттного теплового пакета. Причина, очевидно, состоит в том, что изначально архитектура Skylake оптимизировалась с прицелом не на высокие частоты, а на энергоэффективность и возможность использования в мобильных устройствах. Поэтому для того, чтобы десктопные Skylake получили приемлемые тактовые частоты, лежащие в окрестности 4-гигагерцевой отметки, пришлось задирать напряжение питания, что неминуемо отразилось на энергопотреблении и тепловыделении.

Впрочем, процессоры Broadwell низкими рабочими напряжениями тоже не отличались, поэтому существует надежда на то, что 91-ваттный тепловой пакет Skylake получили по каким-то формальным обстоятельствам и, на самом деле, они окажутся не прожорливее предшественников. Проверим!

Используемый нами в тестовой системе новый цифровой блок питания Corsair RM850i позволяет осуществлять мониторинг потребляемой и выдаваемой электрической мощности, чем мы и пользуемся для измерений. На следующем ниже графике приводится полное потребление систем (без монитора), измеренное «после» блока питания и представляющее собой сумму энергопотребления всех задействованных в системе компонентов. КПД самого блока питания в данном случае не учитывается. Для правильной оценки энергопотребления мы активировали турборежим и все имеющиеся энергосберегающие технологии.



В состоянии простоя качественный скачок в экономичности настольных платформ произошёл с выходом Broadwell. Core i7-5775C и Core i7-6700K отличаются заметно более низким потреблением в простое.



Зато под нагрузкой в виде перекодирования видео самыми экономичными вариантами CPU оказываются Core i7-5775C и Core i7-3770K. Новейший же Core i7-6700K потребляет больше. Его энергетические аппетиты находятся на уровне старшего Sandy Bridge. Правда, в новинке, в отличие от Sandy Bridge, есть поддержка инструкций AVX2, которые требуют достаточно серьёзных энергетических затрат.

На следующей диаграмме приводится максимальное потребление при нагрузке, создаваемой 64-битной версией утилиты LinX 0.6.5 с поддержкой набора инструкций AVX2, которая базируется на пакете Linpack, отличающемся непомерными энергетическими аппетитами.



И вновь процессор поколения Broadwell показывает чудеса энергетической эффективности. Однако если смотреть на то, сколько электроэнергии потребляет Core i7-6700K, то становится понятно, что прогресс в микроархитектурах обошёл стороной энергетическую эффективность настольных CPU. Да, в мобильном сегменте с выходом Skylake появились новые предложения с чрезвычайно соблазнительным соотношением производительности и энергопотребления, однако новейшие процессоры для десктопов продолжают потреблять примерно столько же, сколько потребляли их предшественники за пять лет до сегодняшнего дня.

Выводы

Проведя тестирование новейшего Core i7-6700K и сравнив его с несколькими поколениями предшествующих CPU, мы вновь приходим к неутешительному выводу о том, что компания Intel продолжает следовать своим негласным принципам и не слишком стремится наращивать быстродействие десктопных процессоров, ориентированных на высокопроизводительные системы. И если по сравнению со старшим Broadwell новинка предлагает примерно 15-процентное улучшение производительности, обусловленное существенно лучшими тактовыми частотами, то в сравнении с более старым, но более быстрым Haswell она уже не кажется столь же прогрессивной. Разница в производительности Core i7-6700K и Core i7-4790K, несмотря на то, что эти процессоры разделяет два поколения микроархитектуры, не превышает 5-10 процентов. И это очень мало для того, чтобы старший десктопный Skylake можно было бы однозначно рекомендовать для обновления имеющихся LGA 1150-систем.

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

Однако это совсем не значит, что Core i7-6700K можно рекомендовать лишь для новых систем. Задуматься о модернизации своих компьютеров вполне могут обладатели конфигураций, в основе которых лежит платформа LGA 1155 с процессорами поколений Sandy Bridge и Ivy Bridge. В сравнении с Core i7-2700K и Core i7-3770K новый Core i7-6700K выглядит очень неплохо – его средневзвешенное превосходство над такими предшественниками оценивается в 30-40 процентов. Кроме того, процессоры с микроархитектурой Skylake могут похвастать поддержкой набора инструкций AVX2, который к настоящему моменту нашел достаточно широкое применение в мультимедийных приложениях, и благодаря этому в некоторых случаях Core i7-6700K оказывается быстрее гораздо сильнее. Так, при перекодировании видео мы даже видели случаи, когда Core i7-6700K превосходил Core i7-2700K в скорости работы более чем в два раза!

Есть у процессоров Skylake и целый ряд других преимуществ, связанных с внедрением сопутствующей им новой платформы LGA 1151. И дело даже не столько в появившейся в ней поддержке DDR4-памяти, сколько в том, что новые наборы логики сотой серии наконец-то получили действительно скоростное соединение с процессором и поддержку большого количества линий PCI Express 3.0. В результате, передовые LGA 1151-системы могут похвастать наличием многочисленных быстрых интерфейсов для подключения накопителей и внешних устройств, которые лишены каких-либо искусственных ограничений по пропускной способности.

Плюс к тому, оценивая перспективы платформы LGA 1151 и процессоров Skylake, в виду нужно иметь и ещё один момент. Intel не будет спешить с выводом на рынок процессоров следующего поколения, известных как Kaby Lake. Если верить имеющейся информации, представители этой серии процессоров в вариантах для настольных компьютеров появятся на рынке только в 2017 году. Так что Skylake будет с нами ещё долго, и система, построенная на нём, сможет оставаться актуальной в течение очень продолжительного промежутка времени.

Сравнение с мобильными и десктопными процессорами

В середине января мы провели первое исследование системы на новой платформе Intel Sandy Bridge. В том тесте участвовал прототип ноутбука Toshiba A665-3D с новым видеоадаптером NVIDIA и технологией NVIDIA Optimus. Однако, что называется, перемудрили: на ноутбуке не включалась внешняя графика. Поэтому приложения, задействующие графику (в первую очередь, игры), тестировать просто не было смысла. Да и вообще, некоторые вещи невозможно адекватно протестировать на раннем и плохо работающем семпле.

Поэтому решено было провести повторное тестирование уже другой системы, и случай не заставил себя ждать. На тестирование попал другой ноутбук, Hewlett-Packard DV7, на новой платформе и с новым поколением графики от AMD. Правда, когда тесты уже были закончены, появилась информация о печально знаменитой ошибке в южном мосту, из-за которой проданные устройства (в том числе и мобильные) подлежат отзыву. Так что и здесь результаты в строгом смысле слова не совсем официальные (по крайней мере, компания Hewlett-Packard просила вернуть ноутбук), но мы-то понимаем, что ошибка (да еще и настолько «теоретическая») не может повлиять на результаты тестов.

Тем не менее, не стоило выпускать отдельный материал только для того, чтобы еще раз повторить измерения и назвать их финальными. Поэтому в настоящем обзоре мы поставили перед собой несколько задач:

  • проверить результаты новой системы в «мобильной» методике;
  • проверить работу системы разгона Intel Turbo Boost на другой системе с другим охлаждением;
  • сравнить между собой мобильную и настольные версии процессора Sandy Bridge в настольной методике тестирования компьютерных систем.

Ну что же, переходим к тестированию.

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

Как уже отмечалось, сравнивать производительность подсистем мобильных компьютеров гораздо сложнее, т. к. они предоставляются на тест в виде готовых изделий. Сложно делать выводы, ведь на разницу в производительности может влиять более одного компонента.

Посмотрим на конкурентов, точнее на изменение их состава по сравнению с предыдущим тестированием. Во-первых, мы решили убрать из сравнения модель Core i5-540M. Она относится к более слабой двухъядерной линейке, да и в линейке Sandy Bridge ей будут соответствовать другие модели. Если результаты этого процессора так важны, их можно взять из предыдущей статьи. Вместо него в сравнение включен Hewlett-Packard Elitebook 8740w, тоже на процессоре Core i7-720QM, ну и добавлена основная тестовая система на сегодня - Hewlett-Packard Pavillon DV7 на процессоре Sandy Bridge 2630QM.

Таким образом, в тесте участвуют две модели на процессоре Core i7-720QM и две модели на процессоре Core i7 2630QM. Это позволит не только сравнить между собой производительность систем на более старом и более новом процессоре, но и убедиться, что уровень производительности одинаков для двух систем на одинаковом процессоре.

Ну а мы переходим к анализу конфигураций ноутбуков, участвующих в тестировании.

Название ноутбука HP 8740w ASUS N53Jq Toshiba A665-3D HP DV7
Процессор Core i7-720QM Core i7-720QM Core i7-2630QM Core i7-2630QM
Количество ядер 4 (8 потоков) 4 (8 потоков) 4 (8 потоков) 4 (8 потоков)
Номинальная частота 1,6 ГГц 1,6 ГГц 2 ГГц 2 ГГц
Макс. частота Turbo Boost 2,6* ГГц 2,6* ГГц 2,9* ГГц 2,9* ГГц
Объем кэша LLC 6 МБ 6 МБ 6 МБ 6 МБ
Оперативная память 10 ГБ 10 ГБ 4 ГБ 4 ГБ
Видеоподсистема NVIDIA QUADRO FX 2800M NVIDIA GT 425M Intel интегр. ATI 6570

* указана частота автоматического разгона в том случае, если у процессора под нагрузкой находятся все четыре ядра. Если под нагрузкой находится два ядра, то частота может еще вырасти (с 2,6 ГГц до 2,8 ГГц), а если одно - то подняться до максимальной отметки (с 2,6 ГГц до 2,9 ГГц).

Анализируем необходимые для сравнения данные о процессорах. Во-первых, производитель утверждает, что в линейке Sandy Bridge оптимизирована внутренняя архитектура процессора, это должно приносить какой-то прирост общей производительности.

Количество ядер и потоков гипертрейдинга одинаковое у всех участников. Однако отличается тактовая частота: у 720QM она всего лишь 1,6 ГГц, тогда как новые процессоры работают на 2 ГГц. Предельная тактовая частота, правда, отличается не так сильно. Дело в том, что для 720QM указана частота, когда задействованы четыре ядра, а для 2630QM - когда задействовано одно. Если же у него загружены четыре ядра, то максимальная частота составляет те же 2,6 ГГц. Другими словами, в «разоганном» состоянии процессоры должны работать на одинаковой частоте (пока не сработает контроль температуры). Вот только в Sandy Bridge более продвинутая технология разгона Intel Turbo Boost, которая может дольше держать повышенную частоту, так что у него может быть преимущество. Но точно предсказать, как поведет себя разгон, невозможно, т. к. слишком много зависимостей от внешних факторов.

Давайте переходить непосредственно к тестам.

Сравнение производительности процессора линейки Sandy Bridge с предыдущим поколением в наборе приложений методики исследования производительности мобильных систем. Определение повторяемости результатов

Для тестов мы использовали методику тестирования ноутбуков в реальных приложениях образца 2010 года. По сравнению с настольной, в ней урезан набор приложений, однако оставшиеся запускаются с теми же настройками (кроме игр, в этой группе настройки были серьезно изменены, и параметров тестовой задачи для программы Photoshop). Поэтому результаты отдельных тестов можно сравнивать с результатами настольных процессоров.

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

Сразу оговорюсь, что для каждой системы тесты проводились дважды, причем между прогонами система переустанавливалась и настраивалась снова. Иначе говоря, если результаты тестов и кажутся странными, то они, по крайней мере, повторяемы: на двух разных свежеустановленных системах с актуальным набором драйверов.

Начнем с профессиональных приложений.

3D-визуализация

В этой группе собраны приложения, требовательные и к производительности процессора, и графики.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Lightwave - работа 20,53 22,97 24,87 16,17
Solidworks - работа 52,5 58,83 133,12 60,45
Lightwave - рейтинг 122 109 101 155
Solidworks - рейтинг 129 115 51 112
Группа - рейтинг 126 112 76 134

Что интересно, обе системы «второй волны» значительно обходят по производительности системы, протестированные полтора месяца назад. Интересно, что это - влияние драйверов? Другой, значительно более мощной графики в обоих случаях? Даже если не обращать внимание на старые результаты процессора Sandy Bridge, в сравнении двух Core i7 наблюдается та же зависимость.

Теперь можно с уверенностью сказать, что новое поколение быстрее. За исключением странных результатов SolidWorks, но к ним мы еще вернемся в обсуждении результатов настольной методики.

3D-рендеринг

Посмотрим, как обстоит дело в рендеринге финальной сцены. Такой рендеринг выполняется силами центрального процессора.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Lightwave 138,58 131,56 269,89 90,22
3Ds MAX 0:10:04 0:10:06 00:21:56 0:07:45
Lightwave - рейтинг 95 101 49 146
3Ds MAX - рейтинг 113 112 52 147
Группа - рейтинг 104 107 51 147

Напомню, семпл компании Toshiba показывал в этом тесте очень слабые результаты. Зато в полностью работоспособной системе процессор Sandy Bridge позволяет добиться существенного превосходства в обоих графических пакетах. В Lightwave, как вы видите, есть разница и между двумя Core i7-720QM, а в 3Ds MAX разницы почти нет.

Зато в обоих тестах видно, что процессор Core i7-2630QM существенно быстрее, значительно обгоняет представителей предыдущего поколения.

Вычисления

Посмотрим на производительность процессоров в приложениях, связанных с математическими вычислениями.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Solidworks 46,36 45,88 44,02 38,42
MATLAB 0,0494 0,0494 0,0352 0,0365
Solidworks - рейтинг 111 112 117 134
MATLAB - рейтинг 113 113 159 153
Группа - рейтинг 112 113 138 144

Ну что же, а вот математические тесты не чувствуют разницы между двумя Core i7-720QM. Из этого можно сделать предварительный вывод, что эти приложения в минимальной степени реагируют на другие компоненты системы и программную часть.

Процессор нового поколения быстрее, но здесь отрыв не настолько большой, особенно это очевидно по цифрам рейтинга. Почему-то производительность DV7 в тесте MATLAB немного ниже, чем A660.

Посмотрим, будет ли в других тестах сохраняться примерно такой же отрыв нового поколения от старого.

Компиляция

Тест на скорость компиляции программы с помощью компилятора Microsoft Visual Studio 2008. Этот тест хорошо реагирует на скорость процессора и кэш, да и многоядерность умеет задействовать.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Compile 0:06:29 0:06:24 0:04:56 0:04:54
Compile - рейтинг 123 125 162 163

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

Производительность приложений Java

Этот бенчмарк представляет собой скорость выполнения набора приложений Java. Тест критичен к быстродействию процессора и очень положительно реагирует на дополнительные ядра.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Java 79,32 83,64 111,8 105,45
Java - рейтинг 90 94 126 119

А вот здесь результаты немного, но заметно снизились для более новых протестированных ноутбуков. Не будем гадать, почему так получилось, однако подчеркну, что результаты повторялись два раза. Разница между процессорами разных поколений примерно такая же, как и в предыдущем тесте.

Перейдем к производительным домашним задачам: работе с видео, звуком и фотографиями.

2D-графика

Напомню, в этой группе остались всего два теста, достаточно разноплановых. ACDSee конвертирует набор фотографий из формата RAW в JPEG, а Photoshop проводит серию операций по обработке картинки - накладку фильтров и т. д. Приложения зависят от скорости процессора, а вот многоядерность задействуют постольку-поскольку.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
ACDSee 0:07:01 0:06:55 0:05:11 0:04:52
Photoshop 0:01:17 0:01:17 0:00:49 0:00:51
ACDSee - рейтинг 108 110 146 156
Photoshop - рейтинг 426 426 669 643
Группа - рейтинг 267 268 408 400

ACDSee демонстрирует некоторую нестабильность результатов, но в целом разница между поколениями соответствует тенденции, она даже чуть больше.

На рейтинги Photoshop не стоит обращать внимание из-за измененного тестового задания. Эти же рейтинги портят и общий рейтинг группы. Но если посмотреть на время выполнения, то видно, что преимущество примерно такое же.

Кодирование аудио в различные форматы

Кодирование аудио в различные аудиоформаты - задача для современных процессоров достаточно простая. Для кодирования используется оболочка dBPowerAmp. Она умеет использовать многоядерность (запускаются дополнительные потокие кодирования). Результат теста - ее же баллы, они обратны затраченному на кодирование время, т. е. чем больше, тем лучше результат.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
apple 148 159 241 238
flac 199 214 340 343
monkey 143 155 239 235
mp3 89 96 150 152
nero 85 91 135 142
ogg 60 65 92 90
apple - рейтинг 90 97 147 145
flac - рейтинг 99 106 169 171
monkey - рейтинг 97 105 163 160
mp3 - рейтинг 103 112 174 177
nero - рейтинг 104 111 165 173
ogg - рейтинг 103 112 159 155
Группа - рейтинг 99 107 163 164

Тест достаточно простой, но в то же время наглядный. Совершенно неожиданно здесь появилась разница между двумя процессорами Core i7-720QM, причем не в пользу недавно протестированной системы. Процессоры Sandy Bridge показали почти одинаковую производительность. Как видите, преимущество новых процессоров очень существенное, больше, чем в предыдущих группах тестов.

Видеокодирование

Три теста из четырех - это кодирование видеоролика в определенный видеоформат. Особняком стоит тест Premiere, в этом приложении сценарий предусматривает создание ролика, включая наложение эффектов, а не просто кодирование. К сожалению, Sony Vegas на некоторых системах не отработал, поэтому для этой статьи мы убрали его результаты.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
DivX 0:05:02 0:05:23 0:04:26 0:04:18
Premiere 0:05:04 0:04:47 0:03:38 0:03:35
x264 0:10:29 0:10:01 0:07:45 0:07:35
XviD 0:03:31 0:03:34 0:02:34 0:02:30
DivX - рейтинг 86 80 98 101
Premiere - рейтинг 101 107 140 142
x264 - рейтинг 100 105 135 138
XviD - рейтинг 87 86 119 123
Группа - рейтинг 94 95 123 126

Особняком стоят результаты кодирования в DivX. Почему-то в этом тесте очень большая разница у систем с 720QM и очень маленькая разница между старым и новым поколением.

В остальных тестах разница существенна, а разница между поколениями примерно соответствует общей тенденции. Интересно, что в Premiere разница примерно такая же, как и в простом кодировании. Кстати, в этом тесте тоже обращает на себя внимание большая разница между двумя системами на 720QM.

Ну и, наконец, несколько типов домашних задач.

Архивирование

Архивирование представляет собой достаточно простую математическую задачу, в которой активно работают все компоненты процессора. 7z более продвинутый, т. к. может задействовать любое количество ядер, да и вообще более эффективно работает с процессором. Winrar задействует до двух ядер.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
7-zip 0:01:57 0:01:55 0:01:30 0:01:27
WinRAR 0:01:50 0:01:48 0:01:25 0:01:25
Unpack (RAR) 0:00:50 0:00:49 0:00:42 0:00:41
7-zip - рейтинг 115 117 149 154
WinRAR - рейтинг 135 138 175 175
Unpack (RAR) - рейтинг 140 143 167 171
Группа - рейтинг 130 133 164 167

Разница между одинаковыми процессорами очень невелика. Опять видно, что в сравнении двух систем на 720QM ноутбук 8740 не намного, но стабильно быстрее. Процессоры нового поколения существенно быстрее, разница между двумя поколениями в целом такая же, как в большинстве других групп.

Производительность в тестах браузеров

Тоже достаточно простые тесты. Оба замеряют производительность в Javascript, это, пожалуй, наиболее требовательная к производительности часть движка браузера. Фокус в том, что у теста V8 результат в баллах, а у Sunspider - в миллисекундах. Соответственно, в первом случае чем выше цифра, тем лучше, во втором - наоборот.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Googlev8-chrome 6216 6262 7414 7366
Googlev8-firefox 556 555 662 654
Googlev8-ie 122 123 152 147
Googlev8-opera 3753 3729 4680 4552
Googlev8-safari 2608 2580 3129 3103
Sunspider-firefox 760 747 627 646
Sunspider-ie 4989 5237 4167 4087
Sunspider-opera 321 322 275 275
Sunspider-safari 422 421 353 354
Googlev8 - рейтинг 134 134 162 160
Sunspider - рейтинг 144 143 172 172
Группа - рейтинг 139 139 167 166

Сравнение в HD Play

Этот тест был убран из зачета для настольных систем, однако для мобильных он по-прежнему актуален. Даже если система и справляется с декодированием сложного ролика, в ноутбуке еще очень важно, насколько много ресурсов требуется для выполнения этой задачи, ведь от этого зависит и нагрев системы, и время автономной работы…

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
H.264 hardware 2,6 2,5 2,3 1,2
H.264 software 19,7 18,9 13,4 14
H.264 hardware - рейтинг 631 656 713 1367
H.264 software - рейтинг 173 180 254 243

В абсолютных цифрах разница между двумя 720QM не очень велика, хотя в рейтингах она может показаться существенной. Интересно посмотреть на разницу между двумя процессорами Core i7-2630QM в режиме с использованием аппаратного ускорения. Система с графикой AMD показывает более низкую загрузку, но и при использовании адаптера Intel результаты были очень хорошие. В программном режиме обе системы хорошо справляются с декодированием, загрузка процессора невелика. У процессоров Sandy Bridge загрузка системы прогнозируемо ниже.

Посмотрим на средний балл систем, участвовавших в тестах.

HP 8740w
Core i7-720QM
ASUS N53Jq
Core i7-720QM
Toshiba A665-3D
Core i7-2630QM
HP DV7
Core i7-2630QM
Общий рейтинг системы 128 129 158 173

Хотя в некоторых тестах разница между двумя системами с процессорами Intel Core i7-720QM была ощутимой, в целом они показали практически идентичный результат.

Производительность полностью исправной и работоспособной системы с процессором Core i7-2630QM гораздо выше, чем у протестированного нами ранее семпла. По этим результатам уже можно делать выводы о производительности платформы.

И эти выводы состоят в том, что производительность новой платформы Sandy Bridge где-то на 35% (в зависимости используемых приложений) выше, чем используемой платформы предыдущего поколения. Конечно, выводы все равно не окончательные. Как минимум, у чипов разная частота. Да и вообще, применительно к новым процессорам Intel такое понятие, как «тактовая частота», стало достаточно иллюзорным, потому что у нас появилась технология Intel Turbo Boost.

Проверка работы системы Intel Turbo Boost

В процессорах серии Sandy Bridge реализована новая версия технологии Intel Turbo Boost, обладающая гораздо более широкими возможностями по управлению тактовой частотой процессора. Система контроля и управления стала гораздо более сложной и интеллектуальной. Теперь она может брать в расчет много параметров: какие ядра и насколько загружены, температура процессора и отдельных компонентов (т. е. система может отслеживать и предупреждать локальный перегрев).

Поскольку контроль за температурным режимом и нагрузкой стал более эффективным, процессору нужен меньший запас прочности, чтобы стабильно и эффективно работать при любых внешних условиях (в первую очередь - температурных). Это позволяет более эффективно использовать его возможности. Фактически, эта система представляет собой контролируемый разгон: частота работы повышается, а контроль не дает процессору выйти за рамки условий безопасной работы и потерять стабильность или сломаться. В случае если процессор, работающий на повышенной частоте, слишком сильно нагреется, система мониторинга сама понизит частоту и напряжение питания до безопасных пределов.

Более того, новая система управления разгоном способна учитывать «эффект инерции». Когда процессор холодный, на короткое время частота может подняться очень высоко, процессор может даже выходить за определенный производителем предел рассеивания тепла. Если нагрузка краткосрочная, процессор не успеет нагреться до предельных температур, а если нагрузка продлится дольше - процессор нагреется и система снизит температуру до безопасных пределов.

Таким образом, у процессора Sandy Bridge есть три рабочих положения:

Активированы механизмы энергосбережения, процессор работает на низкой частоте и пониженном напряжении питания. Активируется система Intel Turbo Boost, процессор разгоняется до максимально разрешенной разгонной частоты (она зависит в т. ч. от того, сколько ядер и как загружены), повышается напряжение питания. Процессор работает на этой тактовой частоте, пока позволяет нагрев ядра. Процессор при превышении порогов по нагрузке или нагреву возвращается к тактовой частоте, на которой он гарантированно стабильно работает. Например, для 2630QM эта частота указана как 2 ГГц, эта частота указана в спецификациях и производитель гарантирует, что процессор сможет поддерживать эту частоту сколь угодно долго при условии соблюдения оговоренных внешних условий. Intel Turbo Boost позволяет поднять частоту работы, но параметры его работы и частота работы зависят от внешних условий, поэтому производитель не может гарантировать, что эта система всегда будет работать одинаково.

Впрочем, эту информацию можно почерпнуть из первого обзора. Напомнию, в первом тестировании процессор в простое работал со следующими параметрами:

  • Простой: 800 МГц, напряжение питания 0,771 В.
  • Нагрузка (все ядра, максимум): частота 2594 МГц (множитель 26), напряжение питания 1,231 В.
  • Нагрузка (спустя порядка 5 минут работы) - либо 2594 МГц (множитель 26), либо 2494 МГц (множитель 25).
  • Нагрузка (спустя где-то 7-8 минут работы) - 1995 МГц (множитель 20). Напряжение 1,071 В. Система вернулась к стабильным, заложенным производетелем параметрам работы.

Посмотрим, сколько продержится в разогнанном положении Hewlett-Packard DV7.

Запускаем программы мониторинга состояния процессора.

Частота работы и напряжение те же, что и в предыдущем тестировании. Посмотрим на показания температуры.

Все тихо, температуры относительно невысокие - 49 градусов. Для высокопроизводительного процессора это немного. Обратите внимание на разницу в температуре первого и четвертого ядер.

Запускаем нагрузочный тест. Напомню, он грузит все ядра сразу, так что максимальных цифр (2,9 ГГц) в Intel Turbo Boost мы не увидим.

Как видите, напряжение поднялось до 1,211 Вольт, частота стала 2594 МГц из-за изменившегося множителя, теперь он составляет 26. Процессор начинает стремительно набирать температуру, все громче начинает звучать вентилятор системы охлаждения.

Ну что же, посмотрим, насколько хватит процессора, когда он перейдет на штатную частоту.

Прошла минута, видно, что температуры начинают стабилизироваться.

Прошло пять минут, температуры стабилизировались. По каким-то причинам температура первого и четвертого ядра различается на 10 градусов. Разница в температурах присутствует во всех тестах, даже в простое она заметна. Не берусь сказать, почему это происходит.

Прошло 15 минут с начала тестирования. Температуры стабильны, система охлаждения справляется. Тактовая частота остается на уровне 2,6 ГГц.

Прошло 48 минут. Ноутбук продолжает работать под нагрузкой, температуры стабильны (ну, выросли на градус). Тактовая частота та же:

Ну что же, по крайней мере зимой и в не очень горячем помещении DV7 может работать с максимальной доступной частотой неограниченно долго. Мощности системы охлаждения вполне хватает, чтобы Intel Turbo Boost без проблем держала максимально доступную «разгонную» частоту. Теоретически можно было бы разогнать процессор еще немножко.

Этот вывод отличается от предыдущих результатов. Теперь видно, что стоит покупать качественный ноутбук: если конструкторы хорошо поработали над созданием системы охлаждения, вы получите дивиденды не только в виде качественного и крепкого корпуса, но и в производительности!

Ну что же, а мы переходим ко второй очень интересной части статьи: сравнение мобильного процессора Core i7-2630QM с настольными процессорами серии Sandy Bridge в настольной методике тестирования.

Сравнение производительности мобильного процессора Core i7-2630QM с настольными процессорами серии Sandy Bridge

Для сравнения мы используем результаты из нашего исследования настольных процессоров Core i7 и Core i5 на ядре Sandy Bridge.

Сравним конфигурации участников, включив в таблицу информацию о Core i7-2630QM.

Процессор Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Название ядра Sandy Bridge Sandy Bridge Sandy Bridge Sandy Bridge Sandy Bridge
Технология пр-ва 32 нм 32 нм 32 нм 32 нм 32 нм
Частота ядра (std/max), ГГц 2,8/3,1 3,1/3,4 3,3/3,7 3,4/3,8 2,0/2,9
Стартовый коэффициент умножения 28 31 33 34 20
Схема работы Turbo Boost 3-2-2-1 3-2-2-1 4-3-2-1 4-3-2-1 н/д
Кол-во ядер/потоков вычисления 4/4 4/4 4/4 4/8 4/8
Кэш L1, I/D, КБ 32/32 32/32 32/32 32/32 н/д
Кэш L2, КБ 4×256 4×256 4×256 4×256 н/д
Кэш L3, МиБ 6 6 6 8 6
Оперативная память 2×DDR3-1333
Графическое ядро GMA HD 2000 2000 2000/3000 2000/3000 3000
Частота графического ядра (max), МГц 1100 1100 1100 1350 1100
Сокет LGA1155 LGA1155 LGA1155 LGA1155 н/д
TDP 95 Вт 95 Вт 95 Вт 95 Вт 45 Вт

Тактовая частота у мобильного процессора ниже, что очевидно. В максимальном режиме Turbo Boost он чуть-чуть обгоняет по тактовой частоте младший настольный Core i5, работающий без Turbo Boost, но не более того. Зато значительно ниже тепловой пакет - более чем вдвое. Кроме того, у него меньше объем кэша последнего уровня, всего 6 МБ. Из плюсов стоит отметить, что у мобильного процессора четыре ядра и восемь потоков вычислений, т. к. это Core i7. Хоть какое-то преимущество над младшими настольными Core i5. Посмотрим, во что оно выльется на практике.

К сожалению, полноценного сравнения все равно не получилось. Некоторые пакеты из настольной методики не запустились (например, Pro/Engineer стабильно зависал на нашей тестовой системе), в результате пришлось выкинуть их результаты из рейтинга, а значит, и сам рейтинг поменялся по сравнению с рейтингами из основного материала.

Перейдем к тестам. Фраза «тест не запустился» означает, что тест не запустился именно на нашем ноутбуке, поэтому убраны результаты всех участников тестирования. Рейтинги в этом случае пересчитываются.

По результатам сразу видно, что мобильный процессор проигрывает настольным довольно серьезно - не может достичь уровня производительности даже младшего процессора новой настольной линейки. Результаты настольного процессора Core i7, на мой взгляд, слабоваты, все же он должен быть намного мощнее линейки Core i5, по результатам же зависимость кажется линейной. Результаты Solidworks вообще практически одинаковые для всех настольных систем. Этому тесту все равно, какая тактовая частота у процессора?

Посмотрим на скорость рендеринга трехмерных сцен.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
3ds max 181 195 207 233 157
Lightwave 153 168 180 234 161
Maya 142 170 181 240 165
Rendering 159 178 189 236 161

Здесь ситуация немного повеселее - мобильная система все-таки достигла уровня младшей настольной. Однако настольный Core i7 далеко впереди во всех тестах. Для сравнения, вот абсолютные результаты одного из тестов, Maya. Результатом этого теста является затраченное на выполнение проекта время, что более наглядно, чем очки в других тестах.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Maya 00:08:47 00:07:20 00:06:52 00:05:11 00:07:34

Как видите, даже при не очень большом времени просчета проекта разница существенна. В случае более сложных проектов она должна быть еще больше.

Переходим к следующем тесту.

Практически все приложения используют сложные математические вычисления, поэтому настольная линейка с более высокой частотой очевидно будет впереди. В то же время, меня очень смущает слишком маленькая разница между настольными Core i5-2500 и Core i7-2600, в некоторых приложениях более мощный процессор даже проигрывает. Неужели в этих приложениях гипердрединг действительно настолько неэффективен, что даже разница в тактовых частотах не может компенсировать вызыванное им замедление? Это тем более интересно, ведь в мобильном процессоре конфигурация ядер такая же, как в серии 2600, а он в общем-то не так уж и сильно и отстает от младшего настольного процессора, учитывая разницу в рабочих частотах между ними.

А мы переходим к менее профессиональным и более распространенным тестам. И начнем с растровой графики. К сожалению, не запустился один из тестов, что опять повлияло на картину тестов.

И снова мобильная система стабильно оказывается на уровне чуть ниже самого младшего настольного решения. И то за счет неожиданно высокого результата в Photoimpact, иначе картина была бы еще печальнее. Для наглядности приведу результаты для двух пакетов в абсолютных цифрах.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
ACDSee 00:04:20 00:03:59 00:03:46 00:03:34 00:04:57
Photoshop 00:03:36 00:03:15 00:03:07 00:02:58 00:04:00

Так можно оценить конкретную разницу во времени выполнения задания.

Переходим к тестам на архивирование. Это простые вычисления, хорошо чувствующие и скорость, и наличие дополнительных ядер процессора (хотя с этим есть вопросы).

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
7-zip 140 151 156 213 137
RAR 191 207 216 229 173
Unpack (RAR) 179 194 206 219 167
Archivers 170 184 193 220 159

И опять, и снова… Если смотреть на результаты 7-zip, то можно видеть, что многоядерность (даже в виде гипертрединга) дает существенные дивиденды. Но, видимо, тактовая частота тоже дает существенные дивиденды, потому что мобильный Core i7 с восемью ядрами опять не дотянул даже до младшего настольного процессора. И такая же ситуация сохранилась и в тестах Winrar. Зато настольный Core i7-2600 в тесте 7-zip уходит очень далеко вперед.

Тест компиляции, опять же задействующий математические возможности процессора…

В тесте на производительность приложений Java тенденция в принципе подтверждается. Но отставание мобильного процессора еще больше.

Посмотим на производительность Javascript в современных браузерах.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Google V8 161 176 190 191 148
Sun Spider 156 162 167 170 198
Browser 159 169 179 181 173

Если результаты теста от Google примерно соответствуют тому, что мы видели раньше, то в Sunspider явно что-то не так. Хотя в принципе во всех браузерах этот тест отработал на мобильном процессоре быстрее, чем на всех настольных, включая и настольный Core i7 (который, правда, по результатам очень несильно отличается от старшего Core i5).

В общем, весьма неожиданный результат второго теста, который я объяснить не могу. Возможно, что-то по-разному сработало именно в ПО?

Оставим интернет-приложения и перейдем к работе с видео и аудио. Тоже достаточно востребованный вид деятельности, в том числе и для мобильных компьютеров.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Apple Lossless 135 149 154 206 126
FLAC 145 159 171 233 144
Monkey"s Audio 150 165 174 230 139
MP3 (LAME) 162 179 191 258 152
Nero AAC 154 171 179 250 148
Ogg Vorbis 164 179 191 252 147
Audio 152 167 177 238 143

Аудиокодирование не преподносит нам никаких сюрпризов. Мобильный Core i7-2630QM немного слабее всех протестированных настольных процессоров, настольный Core i7 уходит в серьезный отрыв. А что будет в видеокодировании?

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
DivX 146 160 170 157 96
Mainconcept (VC-1) 153 167 175 187 133
Premiere 155 169 178 222 132
Vegas 164 177 185 204 131
x264 152 165 174 225 136
XviD 166 180 190 196 133
Video 156 170 179 199 127

Отставание мобильного процессора увеличилось, настольный Core i7 по-прежнему сильно опережает все остальные процессоры, хотя разрыв и уменьшился.

Ну и одно из самых «реальных» тестирований: игры!

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Batman 131 134 135 134 40
Borderlands 142 149 157 160 234
DiRT 2 109 110 110 110 36
Far Cry 2 200 218 232 237 84
Fritz Chess 142 156 166 215 149
GTA IV 162 164 167 167 144
Resident Evil 125 125 125 125 119
S.T.A.L.K.E.R. 104 104 104 104 28
UT3 150 152 157 156 48
Crysis: Warhead 127 128 128 128 40
World in Conflict 163 166 168 170 0
Games 141 146 150 155 84

Так и хочется сказать «ой». Все игры четко разделяются на зависящие от процессора и зависящие от графики. Установкой более мощного процессора можно здорово повысить скорость в Borderlands, Far Cry 2 и Fritz Chess. Некоторые игры реагируют на более мощные процессоры совсем чуть-чуть, некоторые не реагируют вообще. Если убрать из рассмотрения World in Confict, где мобильный Core i7 получил 0, то общий рейтинг выглядит так.

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

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Batman 205 209 210 209 63
Borderlands 75 79 83 85 124
DiRT 2 76 77 77 77 25
Far Cry 2 76 83 88 90 32
Fritz Chess 8524 9368 9982 12956 8936
GTA IV 63 64 65 65 56
Resident Evil 128 128 128 128 121,6
S.T.A.L.K.E.R. 62,9 62,9 63 62,9 17,2
UT3 166 169 174 173 53
Crysis: Warhead 57,4 57,6 57,7 57,7 18,1
World in Conflict 62,6 63,5 64,3 65

Как видите, если настольные процессоры практически всегда показывают вполне неплохие результаты, то мобильная система много где находится на пороге играбельности или ниже него.

Практически для всех игр процессоры слишком быстрые, финальный результат зависит в основном от производительности видеокарты. При этом уровень производительности мобильной системы значительно ниже, что позволяет сделать некоторые выводы об очень большой разнице между настольными и мобильными видеорешениями. Разница на примере наших тестов составляет в среднем три раза. Особняком стоят GTA IV и Resident Evil, которые показывают на всех системах, включая мобильную, близкие результаты.

В шахматной программе, где нагружен процессор, мобильный Core i7 выступает хорошо, между бюджетными настольными моделями.

Ну что же, подведем итог.

Core i5-2300 Core i5-2400 Core i5-2500/2500K Core i7-2600/2600K Core i7-2630QM
Общая оценка 157 170 180 203 141

Общий результат подтверждает тенденцию: один из самых мощных мобильных процессоров Core i7-2360QM не может достичь уровня производительности младшего настольного процессора в более слабой линейке Core i5. Настольный процессор Core i7 по производительности сильно отрывается даже от настольных процессоров из младшей линейки, что уж говорить о мобильной версии.

Вывод

Итак, время переходить к выводам. Напомню некоторые итоги из предыдущего материала.

На первый взгляд, Sandy Bridge - действительно, весьма удачный процессор. Во-первых, он сильно доработан, убраны нелогичные решения (те же два отдельных кристалла, выполненных по разным техпроцессам), структура чипа стала логичной и хорошо оптимизированной. Улучшилась шина связи компонентов внутри процессора (куда теперь входит и видеоядро!). Во-вторых, оптимизирована структура ядер процессора, что тоже должно повлиять в лучшую сторону на производительность. Практика подтверждает теорию: тот процессор, который был у нас на тесте, по производительности уходит далеко вперед по сравнению с текущей платформой.

И действительно, в практическом тестировании Core i7-2630QM, который должен быть самым младшим в новой мобильной линейке Core i7, серьезно обходит по уровню производительности Core i7-720QM, самый распространенный из производительных (или самый производительный из распространенных) процессоров мобильной линейки Intel Core первого поколения. Судя по всему, 2630QM должен занять его место, т. е. стать мейнстримовым производительным процессором в линейке Core 2-го поколения.

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

Однако в сравнении с новыми настольными процессорами Sandy Bridge Core i5 и i7 новый мобильный Core i7-2630QM все-таки проигрывает. Причем мобильная платформа слабее стабильно и во всех группах тестов. Это нормальная ситуация, т. к. при создании мобильных линеек приоритетами являются не только производительность, но и малое энергопотребление (для обеспечения большего времени работы от батарей), и низкое энергопотребление (из-за более компактных и слабых систем охлаждения). Стоит посмотреть хотя бы на термопакет нового мобильного процессора, который больше, чем в два раза (!) ниже, чем у настольных версий. За это приходится расплачиваться, в т. ч. более низкой штатной частотой и производительностью в целом.

Кстати, если говорить о частотах. Hewlett-Packard DV7 преподнес в этом плане приятный сюрприз (хотя возможно, что жарким летом все будет не столь радужно). Процессор, при условии хорошей системы охлаждения, может неограниченно долгое время работать на максимальной частоте Turbo Boost 2,6 ГГц, так что он вполне способен продемострировать более высокий уровень производительности, чем в соответствии со стандартными спецификациями. Конечно, нет никаких гарантий, что летом система охлаждения будет справляться, а если нет, то уровень реальной производительности относительно настольных систем может оказаться существенно ниже, чем в наших тестах. Поэтому наличие грамотной системы охлаждения в ноутбуке с новым мобильным процессором Core i7 выходит на первый план.

Статьи по теме: