AMD продолжает развивать свою долгоиграющую платформу AM4. Недавно вышло новое поколение процессоров Ryzen на микроархитектуре Zen 2. Вообще, цикл развития архитектур AMD стал чем-то напоминать тик-так Intel, но не 1 в 1. Так, второе поколение Ryzen было скорее вариацией на тему изначальной архитектуры Zen с исправлением основных косяков и реализованное на чуть более тонком техпроцессе, что нашло отражение даже в названии архитектуры чипов 2xxx — Zen+. Сейчас же AMD выкатили чиплетную архитектуру. Получилась прямо классическая спираль развития — AMD в 2003 году первыми начали перенос компонент северного моста в ядра, начав с переноса в процессорах линейки K8 контроллера памяти в CPU и закончив тем, что Ryzen тысячной и двухтысячной серий представляли из себя полноценные SoC, так в 2019 они же снова вынесли северник в отдельный кристалл, пусть и на той же подложке, что и ядра.
Теоретических материалов, обзоров и тестов хватает и на русском (например Разгон Matisse или в поисках предела. Обзор архитектуры Zen 2), и на английском языках, мне же захотелось лично сравнить свежий AMD Ryzen 7 3700x с 2700x на моих тестах, аналогичным использованных в прошлых постах (пост 1, пост 2).
Участники тестирования
Материнская плата ASUS ROG Strix X470F-Gaming (BIOS 5007, AGESA ComboAM4 1.0.0.2):
Память G.Skill Trident Z DDR4 DIMM 3600MHz PC4-28800 CL17:
Система охлаждения Deepcool Captain 360EX.
Конфиг 1:
CPU: AMD Ryzen 7 2700X
RAM: G.Skill Trident Z DDR4 DIMM 3600MHz PC4-28800 CL17 @ 3400CL16
Конфиг 2:
CPU: AMD Ryzen 7 3700X
RAM: G.Skill Trident Z DDR4 DIMM 3600MHz PC4-28800 CL17 (DOCP Profile)
Конфиг 3:
CPU: AMD Ryzen 7 3700X
RAM: G.Skill Trident Z DDR4 DIMM 3600MHz PC4-28800 CL17 @ 16-16-16-32
Прежде чем перейти к результатам тестов, хочу отметить пару проблем, затруднивших тестирование:
Все тесты Ryzen 7 3700x проводились под сборкой 1903 Windows 10. При этом 2700х тестировался на октябрьской сборке. Не все тесты 2700x удалось прогнать под 1903, но те, что были прогнаны, показали, что майское обновление Windows снизило производительность системы по крайней мере на платформе AMD, так что результаты с предыдущими статьями напрямую не сравнимы. Там, где тесты прогонялись повторно, это будет явно указано.
Платформа Zen 2, точнее её поддержка со стороны BIOS материнских плат на чипсетах старого поколения (например, на чипсете X470 на моей материнской плате), откровенно сырая, и при попытке запустить процессор Ryzen 7 3700x на всех настройках, установленных в Auto, были получены очень странные результаты, а именно отвратительная работа нового CPU с памятью, с низкой пропускной способностью (далее ПСП) и огромными задержками:
В настройках BIOS отображалось, что частота северного моста составляет 1600 MHz, но по факту он запускался на 800 (по данным CPU-Z), что и давало соответствующую картину. Мало того, что активировался асинхронный режим работы с памятью, вносящий дополнительные задержки, так и сам контроллер, и Infinity Fabric работали с черепашьей скоростью. При этом попытки установить частоту работы северника синхронной с частотой памяти приводили через раз к мёртвому зависанию при POST на этапе инициализации памяти.
Алгоритм получения рабочих настроек в итоге получился следующий:
- сброс настроек CMOS джампером
- загрузка оптимизированных настроек по умолчанию, сохранение настроек
- отключение питания (именно обесточивание БП, а не просто soft off)
- установка частоты работы памяти (активация DOCP профиля), сохранение настроек
- отключение питания (именно обесточивание БП, а не просто soft off)
- установка частоты работы северного моста, равной частоте работы памяти, сохранение настроек
- отключение питания (именно обесточивание БП, а не просто soft off)
если пропустить обесточивание системы на любом из этапов, есть шанс словить ошибку тренировки памяти и как следствие, необходимость сбрасывать настройки джампером и начинать всё сначала из-за невозможности загрузиться в BIOS. Надо ли говорить, что на 2700x таких танцев с бубном совершенно не требовалось.
По конфигам видно, что тестирование проходило при разных частотах памяти. AMD утверждают, что контроллер памяти в чиплете процессоров на микроархитектуре Zen 2 стал более всеядным и поддерживает бОльшие частоты, чем прежние версии. Судя по моим наблюдениям, это действительно так: на Ryzen 7 2700x эти плашки памяти не удавалось стабилизировать даже на их дефолтных XMP таймингах на частоте 3600, при этом на частоте 3400 тайминги удавалось выставить довольно жёсткие. На Ryzen 7 3700x память сходу завелась на родной частоте и позволила без особых плясок с бубном выставить тайминги по DRAM-Calculator-for-Ryzen.
Методика тестирования
Методика не менялась с прошлого года.
Тесты платформы AM4 проводились под управлением ОС Windows 10 Pro 1903 (сборка 18362.239)
Защита от Spectre и Meltdown деактивирована на всех тестовых системах с помощью утилиты InSpectre.
Все тесты проводились по несколько раз (не менее трёх-четырёх), результат первого прогона отбрасывался, так как на результат первого прогона заметно сильнее влияют задержки ввода-вывода. Брался максимальный результат, остальные прогоны теста проводились для проверки возможных аномалий.
Производительность
Passmark
Ryzen 7 2700x
Ryzen 7 3700x D.O.C.P.
Ryzen 7 3700x manual timings
Тест памяти
По производительности памяти прогресс прямо скажем, так себе. Вынос контроллера памяти из кристалла с ядрами не дался бесплатно — выросли задержки, общая производительность упала. Кроме того, видно проседание скорости записи в два раза по сравнению с прошлым поколением и скоростью чтения/копирования. Судя по всему, чиплет cIOD оптимизирован под два CCX чиплета, и на одном выдаёт вот такие слегка кривые результаты (да, на Ryzen 9 проседания скорости записи тоже нет). Но это с одной стороны. С другой — по скоростям чтения и комбинированных нагрузок чтение-запись такого провала нет. Учитывая, что в среднем чтение-запись в коде соотносятся как 3/1, то компромисс выглядит разумным. А учитывая возросшие скорости кэш-памяти и здоровенный кэш третьего уровня, то по памяти ± выходит то на то.
Рендеринг
Проявка RAW-снимков
А вот в работе с 2D графикой, в которой до сих пор безраздельно рулили процессоры Intel, трёхтысячная серия сделал нехилый такой рывок. Ускорение в Adobe Lightroom 7.5 полтора раза!
3DMark
Производительность в играх
Температура и энергопотребление
Не смотря на заявленный TDP в 65Вт камешек Rayzen 7 3700x получился довольно прожорливым и горячим. Температура в простое колеблется от 35 до 50 градусов. Потребление и температура под нагрузкой сильно зависит от характера нагрузки (внезапно!).
Под типичной игровой нагрузкой частота ядер CPU колеблется в районе 4.25-4.35 GHz, потребление в таком режиме составляет в среднем 95-100Вт.
Под нагрузкой от рендеринга процессор начинает потреблять уже в районе 120Вт:
Под стресс-тестами (Prime95 Small FFTs) потребление подскакивает до 170+ Вт, температура упирается в 95 градусов даже под водянкой с вентиляторами на максимальных оборотах и частоты падают до 4-4.05GHz:
Заключение
Процессоры трёхтысячной серии AMD Ryzen вышли и правда довольно интересными, но общий восторженный информационный фон вокруг них лично у меня породил завышенные ожидания, которые не особо оправдались.
С одной стороны, производительность на такт действительно подросла, но заметно без микроскопа только в некоторых сценариях. Частотный потенциал вообще подрос в среднем на 50-100MHz, ни о каком прорыве речь не идёт. С памятью стали работать даже хуже, чем прошлое поколение. При заявленном TDP в 65Вт процессор не стесняется потреблять почти в три раза больше, при этом греется так, что трёхсекционная водянка перестаёт справляться с охлаждением. BIOS-ы с поддержкой этих процессоров пока что откровенно сырые. Всё это приправлено ошибками в микрокоде (RDRAND на материнских платах на x570 чипсете). Косячат конечно все, но настолько сырого продукта на старте я давно не видел.
С другой — это уже третье поколение процессоров на одной и той же платформе AM4. Если сравнивать 3700x с первым поколением Ryzen, то по рендерингу получим ускорение уже в 1.5 раза за 2.5 года. В этом поколении AMD опять удалось увеличить количество ядер в процессорах потребительского сегмента — 12 ядер уже условно доступны, хотя и являются тем ещё дефицитом, да и ценник на них гуманностью не отличается, а на горизонте маячат 16-ядерные CPU на этой же платформе. Да и платформа получилась удачной — за 2.5 года не превратилась в тыкву, материнские платы менять не надо, совместимость с памятью и частотный потенциал в очередной раз подтянули, и даже на тех же самых материнских платах новые процессоры скорее всего позволят запускать память на бОльших частотах и более жёстких таймингах.
В общем, продукт в очередной раз вышел неоднозначным. Ни разу не идеальным, но уже предлагает хорошую производительность даже без оговорки "за свои деньги", а соотношение цена/производительность у него вообще вышло отличное. BIOS-ы подтянутся спустя пару-тройку месяцев и версий. В общем, всё как всегда у AMD.
Комментарии (36)
dartraiden
30.07.2019 12:36+2Не все тесты 2700x удалось прогнать под 1903, но те, что были прогнаны, показали, что майское обновление Windows снизило производительность системы по крайней мере на платформе AMD, так что результаты с предыдущими статьями напрямую не сравнимы.
Связано с тем, что в 1903 планировщик стал учитывать топологию Ryzen. Теперь он старается сперва нагрузить ядра из одного CCX, чтобы минимизировать общение между CCX по шине Infinity Fabric.
По идее, от этого выиграет как раз архитектура Zen 2, где CCX попарно разнесены по чиплетам (что приводит к появлению «очень далёких ядер», разнесённых не то что по разным CCX, а ещё и по разным кристаллам), а Infinity Fabric хоть и работает у автора на своей максимальной частоте (синхронно с памятью на 3600 МГц), но межъядерное взаимодействие внутри одного CCX всё равно быстрее. Тестовые утилиты, похоже, ещё не научились это «понимать».Shurikh Автор
30.07.2019 12:39классический пример, когда хотели как лучше, вышло — как всегда. Почему-то что FPS, что результаты синтетики от таких «доработок» только упали.
GiperBober
30.07.2019 13:00Я вот в задумчивости, на что менять свой Ryzen 1600 — на 2700 или на 3600?.. Под игры в основном. Я бы наверное, не стал менять вообще проц (вполне себе работает на 3,8 ГГц), но он глючит в двухканальном режиме — в одноканальном режиме память гонится до 3,2 ГГц (любая из планок), в двухканале работает сугубо на штатной частоте памяти 2,67 ГГц. Чуть выше — вылеты. Планки менял местами, тестировал по одной — работают, игрался с вольтажами и сбросом разгона проца, результат один — в двухканалке — никакого разгона памяти, который, как всем известно, чрезвычайно полезен для Райзенов.
Shurikh Автор
30.07.2019 13:31Вы уверены, что вы планки вставляли в разные каналы? Просто симптомы уж очень напоминают использование двух планок в одном канале
GiperBober
30.07.2019 13:35+1Материнка бюджетная двухслотовая B350 (БИОС на Ryzen 3000 уже вышел), поэтому там нет особых вариаций. Но двухканальность поддерживается, да. И планки одинаковые — 8-ми гиговые круциалы 2667.
boilroom
30.07.2019 17:30А другие планки не пробовали? У меня как раз сейчас стоит под боком ПК с первым поколением Ryzen и матплатой на B350-м чипсете. Тоже с двумя слотами под память, от Gigabyte. Обе планки гонятся до 3200 без изменения таймингов и вольтажа. Память довольно бюджетная при этом. Двухканал работает
GiperBober
30.07.2019 20:31По отдельности планки гонятся, проблема сугубо в двухканальном режиме. Других планок для проверки нет, думаю, всё же в контролере памяти в процессоре дело.
wormball
31.07.2019 14:04Помнится, был у меня круциал в 2010 году (на интеле). Ежели я правильно помню, то симптомы были исключительно такие же. Тоже другого ничего не было и тоже думал, что мать виновата. Заменил по гарантии на другую модель — та же петрушка. Заменил круциал (на не помню что) — всё работает до сих пор.
Oz_Alex
31.07.2019 02:09Та же самая проблема на MSI b350 четырёхслотовой с памятью Gskill Ripjaws 3200 2x16gb: если ставлю профиль XMP2 — частота будет 2667. Если ставлю руками 3200 — иногда просто не стартует, включается и выключается через 3 секунды.
Биос ещё не обновлял.Shurikh Автор
31.07.2019 10:23+1недостаточно просто поставить 3200, там все тайминги и настройки терминации памяти надо ставить для стабильной работы в оверспекнутых режимах.
Вот тут хороший гайд по настройке памяти на платформе AM4: www.overclockers.ua/memory/amd-ryzen-memory-overclockingOz_Alex
31.07.2019 10:27Так в том-то и дело, что это не разгон, а стандартная частота, однако не тянет.
Скрин
Mokammal
31.07.2019 10:18Как вы разгоняли? Для первого поколения частота 3200 уже в принципе неплохая, нужна тонкая настройка. И биос какой версии? Обновляли?
greatkir
30.07.2019 13:16+2Есть определенные причины, почему скорость памяти на запись была уменьшена. Мне понравился вот этот разбор микроархитектуры, многое стало понятнее: www.overclockers.ua/cpu/amd-zen-2-ryzen-7-3700x
Alexsey
30.07.2019 13:28+1С памятью стали работать даже хуже, чем прошлое поколение. BIOS-ы с поддержкой этих процессоров пока что откровенно сырые.
Не совсем понятно почему косяки устаревшей матери из-за сырой поддержки 3000 серии вы перекладываете на процессор. Тем более учитывая что это асус, который вообще не торопится делать поддержку 3000 серии на x470.
Вот если такие косяки есть на x570 тогда есть смысл пинать амд за такое.Shurikh Автор
30.07.2019 13:35+1Ну да, южный мост конечно 'очень важен' при работе с памятью, когда топология матери daisy chain и контроллер памяти в CPU.
Alexsey
30.07.2019 15:01Говоря про x470, x570 я имел ввиду поколение матерей, а не конкретно чипсеты.
Shurikh Автор
30.07.2019 15:06А при чем здесь поколения матерей? Топология может ограничивать максимально достижимые частоты и/или тайминги, но на скорость работы при прочих равных не влияет от слова никак. В конце концов посмотрите тесты на х570 — в них результаты точно такие же, и просадка записи, и падение общих скоростей
woodoodm
30.07.2019 16:04По тепловыделению совсем жесть. Вот интересно, у них есть что то подобное режимам работы Power Limit 2 и 1 от Intel? А то получается ну совсем некрасиво. Заявляют 65W, а в реальности от 100 и выше.
Kusado
30.07.2019 21:39Если я всё верно понимаю, то тепловыделение такое должно было быть именно потому, что использовалась довольно большая водянка, которая кучу тепла отвела. Были бы температуры выше, было бы и потребление вкупе с производительностью меньше.
VADemon
31.07.2019 04:07Во-первых, непонятно почему материнская плата подает столь высокое напряжение. -100мВ должно быть можно без проблем.
Kusado отчасти верно ответил насчет компонентов. Запас по тепловыделению означает больший простор для автобуста. Но, т.к. оный очень сильно зависит от настроек материнской платы (всё же уже средний сегмент), то тут опираться на техданные от AMD не стоит.
В прошлом году поднялась большая волна по поводу разного поведения турбо-режимов на связках i7-8700k+матери. Различие было ЕМНИП 300-400 МГц и оттуда разные результаты в бенчмарках.
Началось с этого: https://youtu.be/O98qP-FsIWo и продолжение https://youtu.be/CSI6N6RKd5A
Хорошее тестирование влияния MultiCore Enhancement: https://youtu.be/Fa-dou7fL4A
(Да, видео длинные, но там действительно много материала)
Всё, что надо из этого урока вынести: дорогой ЦП в плохой конфигурации будет совершенно другим, чем в бенчмарках. Сборщики экономят на: материнской плате, памяти, охлаждении. Но незнающий люд ведётся за циферкой.
Shurikh Автор
31.07.2019 10:21100мВ должно быть можно без проблем.
Даунвольт пробовал, любое снижение сразу уменьшает малопоточный буст на 25-50Mhz, хотя и чуть снижает температуры под полной нагрузкой. 2700x у меня вообще работал под оффсетом -0.08125В, и горя не знал, удачный был экземпляр, с имеющимся у меня на руках экземпляром 3700x такой номер не прошёл.
С другой стороны материнка обеспечивает спокойно 200+ Вт питания без перегрева, Prime95 гонял где-то сутки на 2700х с потреблением как раз до 200 доходившим, даже 70 градусов там не было — корпус с парой 200мм вертушек на верхнем выдуве обеспечивает отличный обдув материнки в тч и с тыльной стороны.
Mokammal
31.07.2019 11:05Наоборот по тепловыделению он супер-эффективный и холодный. Сравните с другими восьмиядерниками.
Am0ralist
30.07.2019 17:06+1Про потребление ватт — так ведь связано с авторазгоном, вроде как, если PBO отключить — потребление должно упасть? И температура, соответственно…
Mokammal
31.07.2019 11:03Больше всего меня удивил этот момент:
Rayzen 7 3700x получился довольно прожорливым
Извините меня, в каком месте 3700x является прожорливым? Вы сравнивали его с 2700x?
Заявленные 65Вт ТДП это понятно работа на базовых частотах. Но в чем проблема в 100Вт в игровой нагрузке и 120Вт в рендере?
Мой домашний 1800x на меньших частотах (4.1 на 2 ядра) потребляет в среднем в играх 95Вт. А при рендере энергопотребление повышается до 150-160Вт. При меньшей чистоте на 200-300 мгц.
Тот же шестиядерный 8700k в рендере потребляет 130-140Вт… А в Prime95 Small FFTs выдаёт все 185Вт. В играх не знаю сколько…
Я молчу про i7 и i9 девятого поколения, у них в рабочей нагрузке 170-180Вт (против 120 у 3700x).
На мой взгляд, вывод по энергопотреблению и прожорливости 3700x в корне неверен и должен быть целиком и полностью противоположным. Наоборот Ryzen 7 3700x один из самых энергоэффективных восьмиядерников. Местами значительно мощнее, чем 2700x, а потребляет энергии как 2700.Shurikh Автор
02.08.2019 13:40При этом греется он куда сильнее 2700х. Судя по всему, проблемы те же, что и у Intel при уменьшении размера кристалла при переходе на более тонкий техпроцесс — тепло теперь нужно отводить с гораздо меньшей площади, чем раньше.
RPG18
02.08.2019 15:25Shurikh Автор
03.08.2019 00:19+1конечно больше. 32MB кэша третьего уровня на 3700x против 16MB на 2700x, в два раза более широкая Infinity Fabric, полноскоростной AVX и прочие допилы явно не бесплатные по транзисторному бюджету. Притом там спеки вроде не совсем точные — кэш первого уровня у новых Ryzen не 96, а 64 килобайта.
Varim
Скорость билда из исходников кода не раскрыта!
Shurikh Автор
Да я даже не в курсе, научился Ryzen билдить GCC в 16 потоков без ошибок или нет :)
VADemon
Проблема была только в первых степпингах Ryzen 1xxx. Прошивками не лечится, в конце лета отправится на замену по гарантии.