Первые процессоры с микроархитектурой Zen вышли в марте 2017 года. С тех пор прошло всего два с половиной года, но сегодня компания AMD обновляет модельный ряд своих десктопных процессоров, наследующих эту микроархитектуру, уже во второй раз. Причём, речь идёт далеко не о формальных обновлениях. Пусть появившиеся в прошлом году Ryzen второго поколения и можно посчитать простым переводом первичного дизайна на рельсы более совершенного технологического процесса, но теперь речь идёт о куда более значительных переменах. Новые Ryzen третьего поколения, о которых мы говорим сегодня, – это не просто передовой технологический процесс, это к тому же существенные изменения в топологии и микроархитектуре.
AMD действует решительно и быстро: раз за разом она совершает заметные шаги в сторону улучшения своих предложений. И результаты не заставляют себя ждать. Компания планомерно наращивает свою долю на процессорном рынке, а Ryzen второго поколения заслуженно пользуются репутацией лучших предложений для массового рынка по сочетанию цены и производительности. И даже самые отъявленные скептики сегодня признают, что AMD удалось серьёзно раскачать процессорный рынок и сделать по меньшей мере так, что анонсы новых процессоров из заурядных обновлений превратились в главные события в компьютерной индустрии.
Однако теперь компания хочет ещё большего. В то время как Intel продолжает мучать 14-нм техпроцесс и микроархитектуру Skylake родом из 2015 года, AMD собирается окончательно перехватить инициативу. На Ryzen третьего поколения возлагается задача наглядно продемонстрировать технологическое превосходство AMD и перевести её со второго места на первое. Но станет ли третья попытка воспрянувшей AMD создать лучший в новейшей истории процессор для десктопных систем удачной?
Мы пишем эти строки, когда уже знаем результаты тестов. И можем сказать наверняка, в Ryzen 3000 есть масса положительных перемен, которые ставят их на голову выше предшественников. Однако вместе с тем остаются и проблемы, из-за которых предметный рассказ о новинках получается не слишком простым.
По этой причине материал, посвящённый тестированию Ryzen 3000 мы разбили на две части. В первой части мы поговорим о новом восьмиядернике Ryzen 7 3700X, на примере которого легче всего заниматься анализом дизайна в сравнении с Ryzen прошлого поколения и Intel Core. Вторая же часть, которая выйдет следом за первой, будет посвящена тестированию 12-ядерного флагмана Ryzen 9 3900X при помощи которого AMD собирается поставить в массовом сегменте рынка серию абсолютных рекордов.
⇡#Что следует знать про новую микроархитектуру Zen 2
Если при выпуске процессоров Ryzen первого и второго поколения AMD хотела донести идею о том, что она наконец-то возвращается в высшую лигу разработчиков и производителей x86-процессоров, то сегодняшний анонс Ryzen 3000 несёт с собой уже совершенно иной посыл. Теперь компания ставит перед собой гораздо более амбициозную цель – стать лидером процессорного рынка, который предлагает самые быстродействующие, самые энергоэффективные и самые технологически продвинутые чипы.
И эта задача не кажется невыполнимой. В течение последнего года AMD удалось построить весьма прочный фундамент, с которого она вполне способна уверенно стартовать ввысь. Благодаря сотрудничеству с одним из передовых контрактных производителей полупроводников, тайваньской TSMC, компания первой в отрасли ПК перевела производство своих процессоров на 7-нм технологию, что позволило ей увеличить плотность кристаллов, поднять их рабочие частоты и параллельно улучшить энергоэффективность. В дополнение к этому, AMD внедрила и ещё одну инновацию и перешла на новую многочиповую (чиплетную) компоновку процессоров, которая предполагает сборку конечных продуктов из нескольких полупроводниковых кристаллов, что позволяет обойти многие производственные сложности и существенно снизить себестоимость сложных многоядерных процессоров.
Но Ryzen третьего поколения метят столь высоко не только потому, что они способны предложить пользователям много работающих на высокой частоте ядер за сравнительно небольшие суммы. Нечто подобное уже было в ассортименте AMD и раньше. Но к прошлым процессорам компании существовало немало претензий, связанных с невысокой однопоточной производительностью, с серьёзными задержками при межъядерном взаимодействии и с неэффективным контроллером памяти. Теперь же все эти недостатки в той или иной степени должны быть устранены. Говоря об улучшении производительности новых Ryzen по сравнению с предшественниками, AMD оперирует двузначными процентными показателями, и это действительно кажется очень серьёзным прогрессом на фоне того, как развиваются в течение последних лет процессоры Intel.
Однако нужно понимать, что такой существенный рост производительности в Ryzen третьего поколения во многом обуславливается эффектом низкой базы. Микроархитектура новых процессоров не является чем-то принципиально новым: Zen 2 отличается от Zen/Zen+ лишь в деталях и, фактически, несёт с собой набор исправлений наиболее критичных проблем предшественников. Но поскольку проблем разного рода было немало, и многие из них наносили достаточно существенный ущерб общей эффективности микроархитектуры, их устранение в итоге приводит к заметному росту производительности.
И всё же, принижать заслуги AMD нам бы очень не хотелось. В конечном итоге в Zen 2 произошло немало позитивных перемен: увеличилась пропускная способность всех основных внутрипроцессорных магистралей, возросла загрузка имеющихся в процессорных ядрах вычислительных ресурсов, стали больше объёмы данных, с которыми процессор может оперировать локально, а также существенно вырос ключевой показатель удельного быстродействия микроархитектуры – число исполняемых за такт инструкций (IPC).
Подробному анализу анализ архитектурных нововведений и улучшений в Ryzen 3000 мы посвятили отдельный материал, в нём о строении микроархитектуры Zen 2 рассказывается очень подробно.
Здесь же мы лишь напомним главные причины, определяющие пресловутый рост показателя IPC. О них следует знать хотя бы для того, чтобы лучше понимать результаты тестов представителей семейства Ryzen 3000. Итак, это:
- Увеличение ширины блока операций с плавающей точкой (FPU) со 128 до 256 бит. Благодаря этому Zen 2 могут исполнять 256-битные AVX2-инструкции в один приём, то есть вдвое быстрее, чем ранее.
- Двукратное увеличение объёма кеша декодированных микроопераций, что должно снизить простои исполнительной части конвейера из-за нехватки производительности декодера x86-инструкций.
- Значительно улучшенное предсказание переходов, в механизме которого теперь используется новый TAGE-предсказатель (Tagged geometric) и увеличенные по объёму буферы целей ветвлений первого и второго уровней. Всё это в сумме снижает вероятность ошибок предсказания ветвлений и минимизирует количество ситуаций, когда процессор вынужден сбрасывать состояние конвейера из-за неверно сделанных прогнозов ветвления кода.
- Появление дополнительного (третьего) блока генерации адресов (AGU), который позволяет исполнительным устройствам более своевременно получать доступ к необходимым данным даже при высоких нагрузках.
- Увеличенная вдвое ширина шины кеш-памяти, что также позволяет устранить узкие места при обращении исполнительных устройств к данным.
- Удвоенный по объёму кеш третьего уровня, общий размер которого достиг 32 Мбайт на каждый восьмиядерный чиплет.
- Усовершенствованные алгоритмы предварительной выборки данных, позволяющие переносить данные из памяти в кеш до того, как они будут запрошены в процессе исполнения программного кода.
- Увеличенные размеры очередей планировщиков, что позволило повысить эффективность работы технологии SMT.
- Увеличенный размер регистрового файла, что даёт процессору возможность обрабатывать большее число команд параллельно без каких-либо задержек.
- Дополнительные исправления в микроархитектуре, позволяющие противодействовать атакам типа Spectre V4 без снижения производительности.
Проиллюстрировать микроархитектурные улучшения практическими примерами достаточно несложно. Для этого мы обычно пользуемся простыми синтетическими бенчмарками из тестовой утилиты AIDA64: они позволяют увидеть, как поменялась производительность при исполнении тех или иных типовых алгоритмов. На приведённых ниже диаграммах мы сравнили прошлое поколение Ryzen (Pinnacle Ridge) с нынешним (Mattisse) на примере восьмиядерных и шестнадцатипоточных чипов, работающих на одинаковой тактовой частоте 4,0 ГГц. Кроме того, на диаграммы помещены результаты восьмиядерного Coffee Lake Refresh, также работающего на частоте 4,0 ГГц.
На самом деле все эти результаты весьма любопытны. Во-первых, они показывают, что в некоторых алгоритмах микроархитектура Zen 2 обеспечивает чуть ли не двукратный прирост производительности, в то время как в других случаях быстродействие осталось на прежнем уровне. Во-вторых, они позволяют говорить о том, что с точки зрения сравнительно простых вычислительных алгоритмов, которые хорошо распараллеливаются и не нуждаются в активной работе со внешними данными из оперативной памяти, микроархитектура Zen 2 не только доросла до эффективности микроархитектуры Intel Skylake, но и даже превзошла её.
Наиболее впечатляющий прогресс Matisse демонстрирует в тех алгоритмах, которые используют операции с плавающей точкой. А если говорить конкретнее, то там, где применяются инструкции AVX2, FMA3 и FMA4. Ведь именно их исполнение в Zen 2 ускорилось вдвое.
Что же касается целочисленных вычислений, то с ними особых проблем не было и в прошлых процессорах Ryzen. Сейчас же произошло лишь небольшое изменение производительности, связанное в первую очередь с изменениями в кешировании и декодировании инструкций: с уменьшением объёма L1I-кеша и с увеличением кеша декодированных микроопераций. Отдельно нужно отметить сравнительно низкий результат Matisse в тесте CPU Photoworxx. Дело в том, что это – единственный бенчмарк, в котором помимо прочего роль играет производительность подсистемы памяти. А с ней у новых Ryzen действительно всё не так хорошо, как с микроархитектурой. Впрочем, не будем забегать вперёд.
⇡#Шина Infinity Fabric и скорость межъядерного взаимодействия
Если говорить о восьмиядерниках и шестиядерниках, то процессоры Ryzen третьего поколения сохранили свою традиционную базовую структуру – они составлены из двух четырёхъядерных комплексов CCX (Core Complex), которые помещаются в одном восьмиядерном процессорном кристалле-чиплете CCD (Core Complex Die) и соединяются внутри него шиной Infinity Fabric. Однако отличие от прошлых процессоров состоит в том, что восьмиядерный процессор больше не представляет собой единый монолитный кристалл. Контроллер памяти, контроллер PCI Express и элементы SoC изъяты из CCD-чиплета и выделены в отдельный I/O-чиплет, производимый по 12-нм технологии на предприятиях GlobalFoundries. При этом такая двухкристальная компоновка никак не затрагивает связи между ядрами и L3-кешем – здесь всё остаётся по-старому.
В процессорах с 12 и 16 ядрами всё же добавляется ещё один уровень иерархии – в них используются аналогичные восьмиядерные CCD-чиплеты, но в двойном количестве. При этом непосредственного соединения друг с другом CCD-чиплеты не имеют. Они связаны шиной Infinity Fabric только с I/O-чиплетом, поэтому всё взаимодействие между ядрами, находящимися в разных чиплетах, происходит через промежуточный узел – I/O чиплет.
В конечном итоге получается, что даже в случае восьмиядерных процессоров ядра неравноправны по отношению друг к другу: есть «близкие» ядра (находящиеся в одном CCX-комплексе), а есть – «далёкие» (находящиеся в разных CCX и имеющие возможность связаться друг с другом только через Infinity Fabric). В процессорах же, основанных на паре CCD бывают ещё и «очень далёкие» ядра – физически находящиеся в разных кристаллах. В силу этой специфики задержки при обмене данными между ядрами получаются различными в зависимости от того, объединены они в одном CCX или находятся в различных. И это достаточно тревожный момент: в процессорах Ryzen прошлых поколений задержки, возникавшие при общении ядер из разных CCX, становились достаточно ощутимыми и в ряде случаев тормозили производительность.
В Ryzen 3000 эта проблема должна была быть частично исправлена. Во-первых, AMD поработала с Microsoft и смогла добиться того, чтобы планировщик операционной системы теперь учитывал топологию процессора и в первую очередь нагружал ядра из одного CCX-комплекса, переходя к следующему CCX, лишь когда свободные ядра в предыдущем уже загружены работой. Такая стратегия присуща планировщику в новой версии Windows 10 May 2019 Update, и применительно к процессорам Ryzen это позволяет сократить количество межъядерных обращений по шине Infinity Fabric с высокими задержками и сосредоточить вычисления, если они не нагружают все процессорные ядра, внутри наиболее мелкой процессорной структурной единицы.
Во-вторых, шина Infinity Fabric в Ryzen нового поколения заметно ускорена сама по себе: её ширина выросла вдвое – с 256 до 512 бит. Намного ли это улучшает ситуацию? Положительный эффект нетрудно проверить, для этого мы выполнили наш традиционный тест задержек, возникающих при пересылке данных между ядрами. Для сравнения ниже приводятся результаты измерений, сделанные не только для восьмиядерного процессора Ryzen третьего поколения, но и для восьмиядерника прошлого поколения (Pinnacle Ridge), а также для восьмиядерного Coffee Lake Refresh. Все процессоры во время теста были приведены к единой тактовой частоте 4,0 ГГц, память у всех CPU работала в режиме DDR4-3466, а значит шина Infinity Fabric в сравниваемых Ryzen использовала одинаковую частоту 1733 МГц.
Ситуация в Ryzen 3000 действительно заметно улучшилась. Ядра, принадлежащие к одному CCX-комплексу, теперь способны обмениваться данными на 25 % быстрее, а ядра, относящиеся к разным CCX, оказываются «ближе» друг к другу на треть. Таким образом, Ryzen 3000, по крайней мере если говорить про процессоры с числом ядер не более восьми, проблемам с высокими задержками при межъядерном взаимодействии будут подвержены в заметно меньшей степени. Более того, по скорости связей между ядрами, относящимися к одному CCX-комплексу, новые представители семейства Ryzen превзошли даже Coffee Lake Refresh, где применяется кольцевая шина, считающаяся наиболее удачным вариантом соединения компонентов процессора в единое целое.
Положительное влияние высокой скорости Infinity Fabric должно проявиться не только при пересылке данных между ядрами. Стоит напомнить, что каждый CCX-комплекс в процессорах Ryzen обладает собственной кеш-памятью третьего уровня, а объёмный 32-мегабайтный L3-кеш в восьмиядерных Ryzen 3000 на самом деле представляет собой два кеша до 16 Мбайт. Поэтому обращения через Infinity Fabric происходят и в том случае, когда ядра одного CCX-комплекса нуждаются в данных, находящихся в L3-кеше второго CCX-комплекса. Следовательно, наблюдаемое ускорение Infinity Fabric должно положительно сказаться на производительности в достаточно широком диапазоне ситуаций, в том числе и при активной работе с данными.
Однако другая проблема, связанная со скоростью Infinity Fabric так и осталась не решена: частота этой шины продолжает быть связана с частотой работы контроллера памяти. Хотя в новых процессорах AMD и реализовала асинхронный режим работы Infinity Fabric, частота этой шины всё равно не может превышать частоту, на которой работает контроллер памяти, а значит, выбор модулей DDR4 SDRAM продолжит оказывать заметное влияние на производительность Ryzen 3000.
⇡#Скорость кеш-памяти
Если говорить про работу с данными, то подсистема кеш-памяти в процессорах Ryzen 3000 почти не изменилась. Кеш-память первого (L1D) и второго уровня сохранила прежний размер, организацию и латентности, и единственное нововведение – это увеличенный кеш третьего уровня. За счёт перехода на 7-нм технологию AMD позволила себе существенно увеличить транзисторный бюджет CCX-комплексов, и благодаря этому кеш третьего уровня был удвоен — до 16 Мбайт на каждые четыре ядра. Но даже несмотря на это площадь, которую в Ryzen 3000 занимает CCX-комплекс на 7-нм полупроводниковом кристалле, составляет всего 31,3 мм2, в то время как в процессорах прошлого поколения, которые производятся по 12-нм технологии, CCX-комплекс занимает 60 мм2.
Но увеличение объёма L3-кеша произошло не столько от щедрости разработчиков. Это отчасти вынужденная мера. В новых процессорах с чиплетной компоновкой контроллер памяти «отдалился» от вычислительных ядер, и кеширование максимально большого объёма данных – приём, который нужен для того, чтобы постараться снизить число ситуаций, когда процессорные ядра простаивают в ожидании получения данных из памяти. Представители AMD утверждают, что в первую очередь это должно помочь решить проблемы с производительностью в играх, но это мы ещё проверим.
Сейчас же хочется поговорить о другом моменте: рост объёма кеш-памяти всегда сопровождается увеличением её задержек. Так и произошло на этот раз, однако справедливости ради нужно отметить, что рост латентности оказался совсем небольшим – с 38-39 до 41-42 тактов.
На графиках ниже мы сравнили латентность кеш-памяти восьмиядерных процессоров Ryzen второго и третьего поколений, а также актуальных представителей семейства Intel Core. Все процессоры во время измерений были приведены к единой частоте 4,0 ГГц.
Кеш-память первого и второго уровня в Ryzen 3000 по сравнению с процессорами прошлого поколения не изменила своих ключевых рабочих параметров. Латентность L1 и L2 кеша осталась на уровне 4 и 12 тактов. Однако говорить о том, что ближайшая к вычислительным ядрам кеш-память совершенно не изменилась, было бы неверно. Кеш первого уровня в Ryzen 3000 на самом деле стал быстрее, поскольку теперь он способен обслуживать два 256-битных чтения и одну 256-битную запись каждый такт, что означает увеличение его пропускной способности по сравнению с предшествующими процессорами семейства Ryzen вдвое.
В результате, скорости работы L1 и L2 кеша в Ryzen 3000 стали полностью сопоставимы со скоростью работы кеш-памяти нижних уровней в актуальных массовых процессорах конкурента. А кеш-память третьего уровня в новых Ryzen, хотя и увеличила свою латентность, всё равно может предложить меньшие задержки по сравнению с L3-кешем в процессорах Intel Coffee Lake Refresh. Впрочем, не стоит упускать из виду принципиально различные алгоритмы работы L3-кеша в процессорах разных производителей. В Zen/Zen+ и Zen 2 кеш третьего уровня очень простой и виктимный, и к тому же независимый для каждого CCX-комплекса. В то же время в потребительских процессорах Intel для платформы LGA 1151 реализован более интеллектуальный инклюзивный кеш с обратной записью, который разделяется между всеми ядрами процессора. Иными словами, практическая эффективность L3-кеша в процессорах AMD и Intel сильно отличается.
Вместе с тем приведённые графики латентности дают определённые поводы и для беспокойства. А именно, опасения вызывает оконечная часть кривой латентности для Matisse, которая показывает характеристики подсистемы памяти. Как видите, здесь никаких поводов для оптимизма нет: Ryzen третьего поколения оказались хуже своих предшественников и, как следствие, серьёзно проигрывают по латентности памяти процессорам конкурента. В чём же дело?
⇡#Работа с памятью
Реализованная в Ryzen 3000 чиплетная компоновка разделила между собой вычислительные ядра и контроллер памяти процессора. В то время как CCX-комплексы с ядрами и L3-кешем располагаются в 7-нм CCD-чиплетах, контроллер памяти вместе с контроллером PCI Express и элементами SoC вынесен в другой I/O-чиплет. Соединение между чиплетами, смонтированными в процессоре на единой текстолитовой подложке, происходит при помощи шины Infinity Fabric, а значит, на пути данных из памяти в процессорные ядра появился дополнительный этап. И хотя AMD говорит о том, что внешняя шина Infinity Fabric аналогична по скоростным характеристикам шине, связывающей CCX-комплексы внутри CCD-чиплета, всё это, так или иначе, должно было отразиться на задержках, которые возникают при доступе в память.
Иными словами, когда обнаружилось, что латентность памяти в Ryzen 3000 стала хуже, чем раньше, мы совсем не удивились. Интереснее другое: насколько ухудшилась скорость работы с памятью в новых процессорах AMD. Наглядно отвечают на этот вопрос показатели теста Cachemem из утилиты AIDA64 (для корректности измерений все процессоры приведены к единой частоте 4,0 ГГц, во всех случаях в системах установлена двухканальная DDR4-3466 SDRAM с таймингами 16-16-16-36-1T).
Как видно по приведённым данным, ухудшение латентности памяти в Ryzen 3000 по сравнению с процессорами прошлого поколения составляет порядка 11 %. Кроме того, испортились и показатели пропускной способности: скорость записи, которую показывает контроллер памяти Ryzen 3000, стала в полтора раза ниже, чем была раньше. Иными словами, чудес не бывает: точно также как произошедшее в середине 2000-х годов перемещение контроллера памяти из чипсета в процессор ускорило работу с памятью, обратное отделение контроллера памяти от вычислительных ядер закономерно привело к обратному результату.
Причём, для процессоров AMD рост латентности памяти – не просто досадная мелочь, это – действительно очень неприятный момент. По скорости работы с памятью Ryzen прошлого поколения и так заметно проигрывали процессорам конкурента. Теперь же, с выходом Ryzen 3000, ситуация только усугубляется. Хотя пропускные способности при чтении и копировании данных у Ryzen 3000 и Intel Coffee Lake Refresh остаются сравнимыми, по скорости записи и с точки зрения латентности памяти новые процессоры AMD уступают конкурентам в 1,6-1,8 раз.
Но не всё так драматично. Для потенциальных покупателей Ryzen третьего поколения есть и хорошие новости. Самая главная – в новых процессорах применяется значительно переработанный контроллер памяти, который далеко не так капризен, как его предшественник. Это нашло отражение и в паспортных характеристиках: новые Ryzen 3000 получили официальную поддержку DDR4-3200 SDRAM, которой раньше формально не предлагалось. Причём, работоспособность памяти в режиме DDR4-3200 гарантируется для любых пар модулей, вне зависимости от их организации и компонентой базы.
Кроме того, если говорить о реализованных в новом контроллере памяти возможностях, то стоит упомянуть и ещё пару важных вещей. Во-первых, в Ryzen 3000 теперь будут поддерживаться 32-гигабайтные модули, что означает, что в системы на базе новых процессоров можно будет установить в сумме 128 Гбайт памяти. Во-вторых, контроллер памяти поддерживает ECC. Однако возможность использования этой функции будет зависеть от материнских плат, и, как показывает опыт, в обычных потребительских платформах производители обычно её не активируют.
Однако основные преимущества нового контроллера становятся очевидны при его практическом использовании. Его без преувеличения можно назвать беспроблемным: он всеяден по отношению к модулям памяти и гораздо более стабилен в работе, не требуя утомительного подбора таймингов для достижения стабильности на относительно высокой частоте. В то время, как с процессорами Ryzen прошлых поколений модули памяти редко, когда удавалось запустить в режимах быстрее DDR4-3466, с новым контроллером не вызывает проблем и запуск памяти в более скоростных режимах. Вкупе с увеличенным объёмом кеша третьего уровня это во многом компенсирует рост латентности подсистемы памяти в целом.
Впрочем, AMD не была бы собой, если бы к позитивным изменениям не прилагался бы перечень ограничений и оговорок. Так, несмотря на возможность значительного разгона памяти, максимальным рациональным режимом эксплуатации памяти с Ryzen 3000 выступает DDR4-3600. Именно в этом случае достигается максимальная производительность, более же быстрые по частоте режимы бессмысленны с точки зрения быстродействия.
Ryzen 7 3700X c DDR4-3600
Причина состоит в связах между частотами самой памяти, контроллера памяти и шины Infinity Fabric. Они осложняли жизнь поклонникам процессоров AMD ранее, и продолжат делать то же самое и в процессорах Ryzen 3000, хотя определённые изменения к лучшему всё же произошли. Самое главное: AMD смогла отвязать частоту шины Infinity Fabric от частоты работы памяти: они в новых процессорах могут меняться независимо. Однако есть важный нюанс: частота Infinity Fabric должна быть либо равна, либо меньше частоты памяти. А это значит, что выбор модулей памяти продолжит оказывать заметное влияние на производительность процессора в целом.
Второй нюанс касается того, что максимально допустимая частота Infinity Fabric в Ryzen 3000 составляет 1800 МГц, а при выборе более высоких значений процессор функционировать не может. Также есть и третий нюанс. Он касается того, что при использовании модулей памяти быстрее DDR4-3600, тактовый генератор контроллера памяти автоматически переходит в режим 2:1, то есть начинает функционировать на вдвое меньшей частоте.
Частота работы памяти (mclk) | Частота контроллера памяти (uclk) | Частота шины Infinity Fabric (fclk) | |
---|---|---|---|
До DDR4-3600 | До 1800 МГц | uclk = mclk | fclk = mclk |
DDR4-3600 | 1800 МГц | uclk = 1800 МГц | fclk = 1800 МГц |
После DDR4-3600 | Выше 1800 МГц | uclk = mclk/2 | fclk = 1800 МГц |
Всё это в сумме и приводит к тому, что использовать память в режимах быстрее DDR4-3600 нет практического смысла: при переходе через эту границу в работу подсистемы памяти из-за включающейся асинхронности добавляются дополнительные и весьма существенные задержки.
Ryzen 7 3700X c DDR4-3866
Как видно по приведённому скриншоту, латентность памяти в режиме DDR4-3866 оказывается примерно на 9 нс выше, чем при выборе режима DDR4-3600 при одинаковых настройках таймингов. Скомпенсировать такой рост задержки дальнейшим повышением частоты DDR4 SDRAM, если говорить об обычном неэкстремальном разгоне, практически нереально.
Небольшая надежда остаётся лишь на то, что частоту Infinity Fabric в серийных процессорах при каких-то условиях всё-таки можно будет поднимать выше 1800 МГц, ведь в теории материнские платы имеют соответствующую настройку с богатым выбором частот для этой шины. В этом случае в системах на базе процессоров Ryzen 3000 может появиться смысл использовать и более быстрые, чем DDR4-3600, модули.
Однако нам пересечь черту в 1800 МГц для Infinity Fabric так и не удалось: выбор более высоких значений неминуемо приводил к полной неработоспособности тестовой системы.
⇡#Чипсет X570 и совместимость со старыми платами
Тестирование Ryzen 3000 мы проводили, вооружившись платформой на базе набора системной логики X570. Компания AMD подготовила этот чипсет специально к выпуску своих процессоров с микроархитектурой Zen 2, однако плата на X570 – совершенно необязательный компаньон для новых Ryzen. Как и их предшественники, Ryzen 3000 совместимы с привычным гнездом Socket AM4 и способны работать в платах, выпущенных как во времена первого, так и второго поколения Ryzen.
Однако не всё так просто. Для работы новых процессоров в старых платах необходима их поддержка на уровне BIOS, а с её реализацией всё далеко не так гладко из маркетинговых соображений. Фактически, Ryzen 3000 будут наверняка совместимы с любыми платами на X470 и B450, со всеми же остальными платформами ситуация отдана на откуп производителей материнок. Поэтому поддержка новых процессоров в каких-то конкретных платах с чипсетами X370, B350 и A320 может и не появиться.
Критерий совместимости простой: для того, чтобы та или иная плата могла работать с Ryzen 3000, её BIOS должен быть пересобран с использованием библиотек AMD AGESA Combo_AM4 PI 1.0.0.1 или более поздних. Если производитель материнской платы выпустил соответствующее обновление прошивки – плата для Ryzen 3000 подойдёт.
Тем не менее, использовать сейчас для тестирования новых процессоров старые платы было бы не слишком хорошей идеей. Дело в том, что производители материнок бросили все силы на оптимизацию BIOS свежего поколения Socket AM4-платформ, а поддержка Ryzen 3000 в старых платформах реализуется по остаточному принципу. Проявляется это в том, что почти все имеющиеся обновления BIOS для старых плат основываются на коде AGESA версий 1.0.0.1 или 1.0.0.2, а эти версии не раскрывают производительности Ryzen 3000 в полной мере.
Для полноценной работы новых CPU и достижения максимального уровня быстродействия в коде BIOS должны быть применены библиотеки AMD AGESA Combo_AM4 PI 1.0.0.3, а это условие на данный момент выполняется лишь для немногих плат, преимущественно с чипсетом X570. Именно по этой причине тесты проводились нами с платой на базе X570, которая благодаря лучшим оптимизациям может предложить более высокую производительность в паре с Ryzen 3000. Однако такая ситуация носит временный характер: по мере обновления кода BIOS в старых платах их быстродействие с Ryzen 3000 должно будет подтянуться до того же уровня, который сегодня обеспечивают свежие платформы.
Сам же по себе набор логики X570 никаких особенно востребованных в данный момент возможностей в платформу Socket AM4 не добавляет. Главная причина, по которой пользователям стоит уделять ему внимание, это – появление в платах на его основе интерфейса PCI Express 4.0. При условии использования Ryzen 3000 в таких платах этот интерфейс поддерживается как графическими слотами PCIe x16, так и слотами M.2 для NVMe-накопителей, а также и любыми другими слотами PCIe. Кроме того, платы нового поколения как правило снабжаются большим числом портов USB 3.1 Gen2: процессор и чипсет X570 могут обеспечить работу до 12 таких портов.
Процессоры Ryzen 3000 обладают 24 линиями PCI Express 4.0. Четыре линии из этого количества задействуются на соединение с набором системной логики, ещё четыре линии отдаются на работу с системным NVMe SSD. Оставшиеся 16 линий – это интерфейс с графической картой.
Чипсет X570 имеет в своём распоряжении 20 линий PCI Express 4.0, четыре из которых нужны для связи с процессором. Остальные 16 линий производитель материнской платы может распределить по слотам PCIe, M.2 или сконфигурировать их как добавочные SATA-порты.
На данном этапе всё это не кажется столь востребованным, хотя устройства с поддержкой PCI Express 4.0 понемногу проникают на рынок. Так, перспективный интерфейс с вдвое более высокой пропускной способностью будут использовать графические карты Radeon RX 5700 и RX 5700XT. Кроме того, в ближайшее время в продаже начнут появляться и твердотельные накопители на базе контроллера Phison PS5016-E16 (например, Gigabyte AORUS SSD NVMe Gen4 или Corsair Force Series MP600), которые также смогут воспользоваться повышенной полосой пропускания интерфейса.
Однако если вы задумываетесь о приобретении материнской платы на базе X570, то должны иметь в виду, что этот чипсет – весьма горячая микросхема, тепловыделение которой лежит в диапазоне от 11 до 14 Вт при пиковых нагрузках. Технически она представляет собой переконфигурированный I/O-чиплет от серверных процессоров EPYC Rome, то есть базируется на 14-нм кристалле, производимом на мощностях GlobalFoundries. И поэтому совсем неудивительно, что она, как и процессоры, нуждается в активном охлаждении: на подавляющем большинстве X570-материнских плат применяется чипсетный кулер с вентилятором.
Кроме того, Socket AM4-платы, в которых используется X570, будут относиться к числу флагманских платформ. И это значит, что стоить они будут немало: можно ожидать, что цены наиболее дешёвых плат нового поколения будут начинаться от $200-$250.
⇡#Подробнее о Ryzen 7 3700X
Модельный ряд процессоров Ryzen 3000 (кодовое имя Matisse) состоит из шести модификаций: двух шестиядерников, двух восьмиядерников, двенадцатиядерного и шестнадцатиядерного процессоров. Для первого ознакомительного обзора мы выбрали среднюю модель – младший восьмиядерный процессор Ryzen 7 3700X.
Сделано это было в первую очередь потому, что ему легко подобрать конкурентов – восьмиядерные процессоры есть как у конкурента, так и среди Ryzen прошлых поколений. Кроме того, Ryzen 7 3700X, как представляется, будет одной из самых востребованных новинок. Это можно заключить, если посмотреть на состав модельного ряда полностью.
Ядра/ Потоки | Базовая частота, МГц | Турбо-частота, МГц | L3-кеш, Мбайт | TDP, Вт | Чиплеты | Цена | |
---|---|---|---|---|---|---|---|
Ryzen 9 3950X | 16/32 | 3,5 | 4,7 | 64 | 105 | 2×CCD + I/O | $749 |
Ryzen 9 3900X | 12/24 | 3,8 | 4,6 | 64 | 105 | 2×CCD + I/O | $499 |
Ryzen 7 3800X | 8/16 | 3,9 | 4,5 | 32 | 105 | CCD + I/O | $399 |
Ryzen 7 3700X | 8/16 | 3,6 | 4,4 | 32 | 65 | CCD + I/O | $329 |
Ryzen 5 3600X | 6/12 | 3,8 | 4,4 | 32 | 95 | CCD + I/O | $249 |
Ryzen 5 3600 | 6/12 | 3,6 | 4,2 | 32 | 65 | CCD + I/O | $199 |
Привлекательность Ryzen 3000 обуславливается четырьмя факторами: высокой производительностью, доступной ценой, умеренным энергопотреблением и тепловыделением и надеждой на отличный от нуля оверклокерский потенциал.
И действительно: Ryzen 7 3700X – полноценный восьмиядерный Socket AM4-процессор с микроархитектурой Zen 2, собранный из одного 7-нм CCD-чиплета с полным набором активных ядер и 12-нм I/O-чиплета. Он имеет чуть более низкие частоты по сравнению со старшим восьмиядерником Ryzen 7 3800X, однако разница в максимальной частоте составляет всего лишь 100 МГц. Никаких других принципиальных отличий нет: у Ryzen 7 3700X в наличии и полноразмерный L3-кеш общим объёмом 32 Мбайт, и L2 кеш с ёмкостью 512 Кбайт на ядро.
На то, что в качестве базовой частоты для этого процессора указана величина 3,6 ГГц, можно не обращать внимания – в реальности за счёт технологии авторазгона Precision Boost 2 процессор практически всегда выходит на существенно более высокую скорость. Например, при тестировании в Cinebench R20 с нагрузкой на различное число ядер наш экземпляр демонстрировал реальные частоты в диапазоне от 4,1 до 4,4 ГГц, что не только неплохо выглядит, но и превышает типичные рабочие частоты прошлого флагмана, Ryzen 7 2700X.
Однако при этом AMD явно лукавит, говоря об энергоэффективности Ryzen 7 3700X и относя его к 65-ваттному тепловому пакету. Чтобы понять это, достаточно посмотреть, как ведёт себя система с этим CPU в номинальном режиме в стресс-тестах, например, в Prime95.
Вызывает вопросы здесь буквально всё. И начать следует с высокой рабочей температуры, которая для нашего экземпляра Ryzen 7 3700X в тесте Prime95 29.8 достигала 90 градусов при том, что сама AMD считает максимально возможным нагрев процессора лишь до 95 градусов. А ведь такая картина в нашем случае наблюдается даже не с коробочным Wraith Prism, а с куда более мощным Noctua NH-U14S.
Безусловно, процессорный кристалл, выполненный по 7-нм нормам, имеет крайне небольшое «пятно контакта» с теплораспределительной крышкой, и следовательно, охлаждать Ryzen 3000 действительно труднее, чем 12- и 14-нм процессоры. Однако 90-градусный нагрев CPU заставляет усомниться в том, что такой процессор под нагрузкой демонстрирует энергопотребление на уровне 53 Вт, о чём рапортуют все его внутренние датчики. Складывается впечатление, что AMD намеренно и очень сильно занижает показатели потребления с тем, чтобы процессор автоматически разгонялся до более высоких частот в рамках технологии Precision Boost 2, которая для 65-ваттного Ryzen 7 3700X устанавливает верхнюю планку потребления в 88 Вт.
О том, каково реальное потребление Ryzen 7 3700X, позволяют судить датчики конвертера питания материнской платы. Согласно их показаниям, на процессор, который якобы создаёт электрическую нагрузку в 53 Вт, подаётся ток мощностью 106 Вт плюс ещё около 15 Вт на SoC. Система же в целом в это время демонстрирует потребление порядка 185-190 Вт, так что сомнений никаких не остаётся: 65-ваттный Ryzen 7 3700X под нагрузкой способен потреблять примерно вдвое больше заявленного теплового пакета. Иными словами, энергоэффективность Ryzen 7 3700X – это ложь, клевета и провокация.
Безусловно, такую ситуацию с потреблением можно списать на неправильную настройку технологии Precision Boost 2 в BIOS конкретной материнской платы или на инициированное самой AMD преднамеренное пренебрежение рамками теплового пакета, но нужно понимать, что если производитель и решит вернуть Ryzen 7 3700X обещанную энергоэффективность, то неминуемо пострадает его производительность. Иного здесь не дано.
А вот чего у Ryzen 7 3700X не отнять, так это очень привлекательную цену. Ryzen 7 3700X – не просто самый дешёвый восьмиядерник с архитектурой Zen 2, это ещё и процессор с самой низкой в новом модельном ряду удельной стоимостью ядра. Кроме того, его стоимость существенно ниже цены младшего восьмиядерного предложения конкурента. Всё это в сумме легко может сделать Ryzen 7 3700X «выбором миллионов», невзирая на любые его недостатки.
⇡#Разгон
Ryzen 7 3700X – младший восьмиядерник в модельном ряду новинок, и такие вводные обычно означают, что данный процессор можно результативно разгонять, как минимум добравшись до частот старших представителей модельного ряда. Тем более, что AMD традиционно не стала чинить никаких препятствий оверклокерам. Множители в Ryzen 7 3700X не блокируются, а теплорассеивающая крышка продолжает припаиваться к поверхности полупроводниковых кристаллов, несмотря на то, что под ней их теперь стало два.
Тем не менее, разгон – это всё-таки совсем не про Ryzen 7 3700X. AMD в каждом новом поколении планомерно выжимала из имеющегося в процессорах частотного потенциала все соки, и к настоящему моменту достигла в этом совершенства. Можно сказать, что Ryzen 7 3700X работает почти на пределе своих возможностей даже в номинальном режиме за счёт технологии Precision Boost 2, на что явно намекают наблюдаемые рабочие температуры.
Так или иначе, максимальной частотой, которую нам удалось «выжать» при ручном разгоне Ryzen 7 3700X, оказалась всего-навсего 4,2 ГГц. При увеличении напряжения питания до 1,4 В процессор на такой частоте работал стабильно и проходил стресс-тестирование в Prime95, однако температура под нагрузкой возрастала до 105 градусов, что вряд ли можно считать нормальным эксплуатационным режимом.
Полученный результат представляет скорее теоретическую ценность, и прибегать к такому разгону на практике нет никакого смысла. Прирост производительности при многопоточной нагрузке составит несколько процентов при том, что при неполной загрузке ядер процессор будет работать даже медленнее, чем в номинальном режиме.
При этом AMD предлагает для энтузиастов другой путь увеличения производительности – корректировку параметров Precision Boost 2 с тем, чтобы процессор самостоятельно выходил на более высокие частоты в рамках встроенного алгоритма авторазгона. Данная технология позволяет изменение своих ключевых опорных констант – пределов потребления по току (PPT) и электрической мощности (TDC и EDC) вместе с увеличением верхней границы частоты, чем и можно воспользоваться для разгона. Однако какого-то заметного эффекта изменением этих пределов в случае Ryzen 7 3700X нам достичь так и не удалось. Даже в номинальном режиме Precision Boost 2 управляет частотами Ryzen 7 3700X очень агрессивно, а главная проблема, встающая на пути разгона – это не ограничения по потреблению и токам, а высокие температуры.