⇣ Содержание
Опрос
|
реклама
Самое интересное в новостях
Как выбрать и настроить память для Ryzen 5000, чтобы не профукать 15 % FPS на ровном месте
Выход на рынок процессоров Ryzen первого поколения в 2017 году спровоцировал появление многочисленных материалов, посвящённых правильному выбору и настройке оперативной памяти. Такие статьи писали и мы, потому что в то время пользователям было и правда сложно разобраться в подборе модулей DDR4 SDRAM для новых процессоров AMD. Контроллер памяти первых Ryzen был очень капризен и предъявлял далеко не самые очевидные требования к применяемым модулям DDR4 SDRAM, плюс многочисленные вопросы возникали и при их настройке. Но сейчас на рынке находится уже третье и четвёртое поколение процессоров Ryzen, и у этих CPU, основанных на микроархитектурах Zen 2 и Zen 3, в плане работы с памятью всё стало значительно лучше и проще. Ушли в прошлое списки рекомендованных модулей DDR4 SDRAM, нет больше жёстких рамок по частоте и другим настройкам подсистемы памяти. Однако всё это отнюдь не значит, что подбору памяти для Ryzen теперь можно вовсе не уделять внимания. Напротив, мы столкнулись с прямо противоположной ситуацией. Дело в том, что AMD за последние несколько лет удалось серьёзно увеличить быстродействие своих процессоров. У них возросла как удельная производительность, так и тактовые частоты. Как мы показали в одном из недавних материалов, сегодняшний восьмиядерный Ryzen 7 5800X опережает относящийся к первому поколению флагманский Ryzen 7 1800X на 69 % в приложениях и на 52 % в играх. То есть современные Ryzen стали способны обрабатывать более чем в полтора раза больше данных, чем их недавние предки, и это очевидным образом увеличило их потребность в более быстрой памяти. К сожалению, развитие оперативной памяти традиционно отстаёт от прогресса в процессорных архитектурах. И старые, и новые Ryzen, несмотря на существенную разницу в их быстродействии, работают с одной и той же DDR4 SDRAM, поэтому единственной возможностью расширить для современного процессора канал доступа к данным ( без существенных переделок архитектуры системы) остаётся увеличение частоты памяти с попутной оптимизацией задержек. Некоторое движение по этому пути действительно происходит, однако ни о каких качественных прорывах речь не идёт: например, если говорить о Ryzen, то за четыре года частота официально поддерживаемой ими памяти выросла всего на 20 % — с DDR4-2666 до DDR4-3200. Тот факт, что рост производительности подсистемы памяти отстаёт от увеличения быстродействия процессоров, осознаёт и сама AMD и прикладывает серьёзные усилия к тому, чтобы залатать этот разрыв. Именно для этой цели в процессорах Ryzen 3000 был удвоен объём L3-кеша, который даже получил собственное название Game Cache. И ровно по этой же причине теперь AMD рассматривает возможность увеличить в процессорах Ryzen 5000 кеш третьего уровня ещё в три раза. О таких планах мы узнали совсем недавно, когда на выставке Computex 2021 компания AMD рассказала о технологии 3D V-Cache, позволяющей добавить дополнительные 64 Мбайт L3 на имеющийся процессорный чиплет «вторым ярусом» благодаря трёхмерному монтажу. Такое стремление к наращиванию объёма кеш-памяти третьего уровня как раз и объясняется желанием AMD минимизировать простои процессорных ядер из-за ожидания данных, которые возникают из-за недостаточной производительности подсистемы памяти. И то, что этот подход действительно применим, хорошо заметно по достигаемому от увеличения L3-кеша эффекту. Например, сама AMD обещает, что добавление в перспективные процессоры Ryzen 5000 дополнительного чиплета 3D V-Cache увеличит их игровую производительность в среднем на 15 %. Пока же гигантского L3-кеша у процессоров Ryzen 5000 нет, правильный выбор оперативной памяти в Socket AM4-системах продолжает вносить весомый вклад в общую производительность. И этот тезис мы можем подтвердить очень убедительным аргументом: по нашим тестам игровая производительность Ryzen 7 5800X с обычной памятью DDR4-2666 и с настроенной DDR4-3800 различается в среднем на 20-25 %. А это значит, что если вы не хотите искусственно сковывать быстродействие современного процессора AMD, то к подбору и настройке его подсистемы памяти нельзя относиться наплевательски. Иначе потери в производительности могут перечеркнуть все преимущества современной микроархитектуры и даже стать причиной разочарования в платформе AMD. Чтобы упростить решение задачи подбора оптимальной подсистемы памяти для процессоров Ryzen 5000, мы решили выпустить этот материал, в котором собрали наиболее важные рекомендации, как лучше подбирать память и как добиваться её наиболее эффективной работы в системе. Мы поговорим о ранговости модулей DDR4 SDRAM, об их частотах и латентностях, о синхронном и асинхронном режимах, а также о частоте работы контроллера памяти и шины Infinity Fabric. ⇡#Почему в этой статье используется память Crucial, хотя речь не о ней Ассортимент оперативной памяти, представленной на прилавках магазинов, отличается большим разнообразием, и сориентироваться в нём очень непросто. Дополнительно проблема усугубляется тем, что производители памяти не сообщают всех характеристик предлагаемой ими продукции, скрывая важные ключевые параметры. В общедоступных спецификациях модулей DDR4 SDRAM обычно указывается лишь три характеристики: их частота, рабочее напряжение и первичные тайминги. Однако для оптимальной настройки подсистемы памяти гораздо важнее иметь другую информацию — на базе каких чипов построены те или иные модули, поскольку это прямо влияет на возможность их разгона и гибкой настройки. Оптимальными вариантами для комплектации систем, построенных на процессорах семейства Ryzen 5000, выступают модули с чипами Samsung B-die или Micron Rev. E – они хорошо масштабируются по частоте и оказываются очень податливы к изменениям таймингов. Но рынок наводнён массой прочих вариантов модулей DDR4 SDRAM, например с разнообразными чипами Hynix, которые гораздо хуже по своим потребительским характеристикам. И что особенно печально, такие чипы нередко обнаруживаются в модулях, которые предлагают известные оверклокерские бренды, например Kingston, Corsair или даже G.Skill. В этой ситуации можно порекомендовать остановить свой выбор на проверенных предложениях, об использовании в которых «хороших» чипов известно заранее и где вероятность неожиданной подмены аппаратных компонентов минимальна. Именно по этим критериям мы и выбираем память Crucail Ballistix. Данный бренд принадлежит компании Micron, и во всех модулях этой марки, относящихся к версии U4 (которая указывается в явном виде в конце маркировки), гарантированно используются разгоняемые и податливые в настройке чипы Micron Rev. E. В настоящем тестировании мы пользовались сразу несколькими вариантами модулей Crucail Ballistix, но все они демонстрировали примерно одинаковые повадки, обусловленные чипами Micron Rev. E. От такой памяти можно ожидать разгона как минимум до частот 3800-4000 МГц и способности работы в таком состоянии при базовом тайминге CL16 (при помощи некоторого завышения параметра RCDRD). Альтернативой модулям Crucail Ballistix для использования в системах на базе Ryzen 5000 может стать память на чипах Samsung B-die. Например, сейчас широкий выбор таких модулей предлагает компания Patriot. Модули на чипах Samsung B-die по сравнению с Crucail Ballistix могут работать при более агрессивных задержках, а потому способны обеспечить несколько лучшую производительность. Однако они и дороже, поэтому наши симпатии остаются на стороне памяти с чипами Micron Rev. E. В то же время всё, о чём пойдёт речь в этой статье, верно для любых типов модулей DDR4 SDRAM. Дальнейший рассказ будет строиться вокруг общих принципов работы подсистемы памяти процессоров серии Ryzen 5000. А поскольку такие правила устанавливаются на стороне процессора, конкретные модули памяти здесь не столь важны. ⇡#Описание тестовой системы и методики тестирования Все тесты для этого материала мы делали в системе, основанной на восьмиядерном процессоре Ryzen 7 5800X. Этот CPU широко доступен в продаже и, наряду с Ryzen 5 5600X, отлично подходит для игровых систем. Кроме того, в контексте тестирования памяти он хорош ещё и тем, что основывается на одном CCX-комплексе, а значит, при работе процессорных ядер с данными не возникает никаких дополнительных задержек, обусловленных неоднородностью топологии, как в 12- и 16-ядерных Ryzen 9 5900X и Ryzen 9 5950X. В составе тестовой системы использовались комплектующие из следующего набора:
Тестирование выполнялось в операционной системе Microsoft Windows 10 Pro (20H2) Build 19042.572 с использованием следующего комплекта драйверов:
Описание использовавшихся для измерения вычислительной производительности инструментов: Синтетические бенчмарки:
Приложения:
Игры:
Во всех игровых тестах в качестве результатов приводится среднее количество кадров в секунду, а также 0,01-квантиль (первая перцентиль) для значений FPS. Использование 0,01-квантиля вместо показателей минимального FPS обусловлено стремлением очистить результаты от случайных всплесков производительности, которые были спровоцированы не связанными напрямую с работой основных компонентов платформы причинами. ⇡#Количество и объём модулей памяти, и почему шестнадцать лучше восьми Первый большой вопрос про память, которым придётся задаться при сборке системы на базе процессора Ryzen, будет касаться её объёма. Все уже привыкли к тому, что для современной системы необходимо 16 Гбайт памяти, и этого объёма хватает для подавляющего большинства игр и программ. У нас на сайте на этот счёт есть даже специальное исследование, которое демонстрирует, что самые требовательные игры не занимают в памяти более 12 Гбайт. Тем не менее некоторые пользователи всё равно считают, что лучше в системе иметь 32 Гбайт – это даст некоторый запас на будущее и может позволить гладко работать в нескольких ресурсоёмких приложениях, запущенных одновременно. Однако в действительности установка в систему 32 Гбайт – выбор не столько в пользу большого объёма, сколько в пользу более высокой производительности. Дело в том, что 32-Гбайт подсистема памяти в общем случае будет располагать большим числом рангов (банков памяти), чем 16-Гбайт подсистема, и это позволит процессору обращаться к данным более эффективно. Работает это так. Процессоры серии Ryzen имеют двухканальный контроллер DDR4 SDRAM суммарной шириной 128 бит, но в каждом 64-битном канале могут использоваться один, два или четыре независимых банка памяти, обращения к которым чередуются для ускорения обработки запросов. Таким образом, с точки зрения производительности лучше иметь большее количество таких банков – это позволит уменьшить простои контроллера памяти в ожидании данных. Привычные модули DDR4 объёмом 8 Гбайт практически всегда представляют собой один банк, и поэтому они называются одноранговыми. Их легко отличить по размещению всех чипов на одной стороне печатной платы. И чтобы с помощью таких 8-Гбайт планок памяти получить чередование банков в каналах контроллера памяти, модулей в системе должно быть как минимум четыре – по два на каждый канал. Модули DDR4 объёмом 16 Гбайт, напротив, в большинстве своём сразу состоят из двух банков и потому называются двухранговыми. Их принципиальное отличие от 8-Гбайт модулей заметно невооружённым глазом: чипы памяти на них расположены на двух сторонах печатной платы, это как раз и есть два разных банка. В этом смысле 16-Гбайт модуль представляет собой аналог пары модулей по 8 Гбайт, и установка в подсистеме памяти даже двух планок по 16 Гбайт уже позволит контроллеру памяти Ryzen включить двукратное чередование банков. Более того, если в системе с Ryzen применить четыре модуля по 16 Гбайт, то число банков в каждом канале вырастет до четырёх, что позволит контроллеру памяти получить ещё более высокую производительность. Правда, нужно оговориться, что в природе всё-таки существуют одноранговые 16-Гбайт модули, построенные на 16 гигабитных, а не на 8 двухгигабитных чипах. Такие предложения сейчас встречаются среди наиболее высокоскоростных оверклокерских комплектов памяти, и они, естественно, обеспечивают более низкую производительность по сравнению с двухранговыми альтернативами, даже несмотря на высокие частоты. Впрочем, распространены такие модули не так сильно, а пользователь всегда может легко разобраться, с двухранговым или одноранговым модулем он имеет дело. Определить это можно как по размещению чипов на двух или одной стороне печатной платы, так и при помощи диагностических утилит. Например, число рангов (банков) в каждом модуле отображает популярная программа CPU-Z. Число активных банков в каналах памяти – очень важный параметр подсистемы памяти применительно к процессорам Ryzen 5000. Начать именно с этого мы решили не просто так: возможность включения чередования банков в каналах памяти позволяет получить ощутимый прирост производительности, а конфигурация «два модуля по 8 Гбайт», не предполагающая никакого чередования, – явно компромиссный вариант в первую очередь с точки зрения быстродействия. Всё это нетрудно подкрепить результатами тестов. Ниже приведены результаты измерения производительности системы на базе Ryzen 7 5800X, укомплектованной модулями DDR4-3600 с одинаковыми таймингами 16-18-18-36, но имеющими различную ёмкость и, соответственно, ранговость. Мы сравнили между собой варианты 2×8 Гбайт, 4×8 Гбайт, 2×16 Гбайт и 4×16 Гбайт, а, кроме того, для полноты картины добавили и одноканальный вариант, полученный при использовании одного двухрангового модуля объёмом 16 Гбайт. Синтетические тесты пропускной способности и латентности говорят о том, что разница между одноранговой и двухранговой памятью в каналах не так уж и велика. Какие-то ощутимые расхождения в показателях можно усмотреть разве только в тестах копирования, поэтому начинает казаться, что вся теория о преимуществе модулей памяти ёмкостью 16 Гбайт – не более чем миф. Но не спешите. В тестах производительности в приложениях, активно работающих с большими объёмами данных, оказывается, что двухранговая память может давать весомый прирост в быстродействии. Например, в архиваторе или в Lightroom конфигурация 2×16 Гбайт быстрее, чем 2×8 Гбайт, почти на 20 %. И даже в приложениях, которые реагируют на производительность довольно слабо, двухранговая память всё равно выглядит лучше. А вот конфигурация 4×16 Гбайт, когда в каждом канале памяти оказывается по четыре банка памяти, уже не так эффективна. Даже в чувствительных приложениях прирост по сравнению с двухранговым вариантом 2×16 Гбайт достигает лишь 2-3 %. Иными словами, оптимальный вариант – двухранговые модули, что подтверждают в том числе и игровые тесты. Не все игры реагируют на ранговость памяти одинаково, но в большинстве случаев модули по 16 Гбайт дают преимущество порядка 10 %. Если же таких модулей в системе установлено не два, а четыре, то можно рассчитывать на дополнительный прирост в частоте кадров на уровне 1-2 %. Попутно заметим, что вариант конфигурации 4×8 Гбайт почти эквивалентен по производительности установке пары модулей по 16 Гбайт, что вполне закономерно, поскольку и в том и в другом случае в каждом канале памяти оказывается по два банка памяти. А вот одноканальная конфигурация даёт производительность ещё хуже, чем 2×8 Гбайт, поэтому прибегать к использованию в подсистеме памяти одного модуля, даже если он имеет двухранговую организацию, стоит лишь в самом крайнем случае. В конце разговора про ранги памяти необходимо подчеркнуть, что здесь речь идёт исключительно о представителях семейства Ryzen 5000, контроллер памяти которых существенно изменился по сравнению с предшественниками. С процессорами Ryzen первого или второго поколений двухранговую память использовать не рекомендовалось вообще, поскольку такие модули сильнее нагружали контроллер памяти и попросту не могли брать высокие частоты. Но в Ryzen 5000 такой проблемы не существует: эти процессоры работают одинаково хорошо как с одноранговой, так и с двухранговой памятью, демонстрируя с последней заметно более высокую производительность. ⇡#Частота памяти и парадокс DDR4-4000 Частота памяти – самый очевидный её параметр. Без всяких дополнительных выкладок понятно, что чем на более высокой частоте работают модули DDR4, тем выше их пропускная способность и тем быстрее процессор может получать данные из памяти. Этот тезис вряд ли нуждается в каких-то дополнительных разъяснениях, хотя, строго говоря, правило «больше — значит лучше» здесь работает далеко не всегда. Но к этому мы вернёмся позднее, а вот что может вызвать вопросы ещё раньше, так это некоторая нестыковка между официальными спецификациями и тем, что имеет место на практике. В спецификациях процессоров серии Ryzen 5000 указывается, что максимально поддерживаемая ими память – DDR4-3200, причём такая частота гарантируется лишь при использовании двух модулей DIMM. При добавлении же второй пары модулей максимальная частота памяти, согласно спецификации, снижается до DDR4-2933 или даже до DDR4-2666 в зависимости от того, о каких модулях идёт речь. Однако эти указания не нужно воспринимать как неопровержимые постулаты: AMD сама говорит, что более высокие частоты возможны, просто случаи, когда у пользователя не заработала память на более высокой, чем DDR4-3200, частоте, не считаются гарантийными. В действительности же контроллер памяти процессоров Ryzen 5000 обладает и гибкостью, и совместимостью – использовать с этим CPU можно память, частота которой значительно превышает установленную в спецификации планку. Например, текущий рекорд частоты памяти для процессоров семейства Ryzen 5000 достигает DDR4-5208, а известный производитель оверклокерских модулей памяти G.Skill выпускает серийные модули DDR4-4000, которые предназначены для установки конкретно в Socket AM4-конфигурации. Иными словами, с процессорами Ryzen 5000 можно использовать память с частотой выше DDR4-3200, и, более того, делать это прямо рекомендуется, поскольку её применение положительно сказывается на быстродействии. Насколько сильно может повлиять на производительность быстрая память, можно увидеть по результатам тестов, в которых мы сравнили конфигурации из Ryzen 7 5800X, работающего с парой модулей DDR4-2666, DDR4-3200, DDR4-3600, DDR4-3800 и DDR4-4000. Во всех случаях, кроме последнего, для подсистемы памяти использовалась одинаковая схема таймингов 16-18-18-38. Для стабильной работы DDR4-4000 в этой схеме пришлось ослабить на единицу тайминг RCDRD, а кроме того, отказаться от синхронного тактования контроллера памяти, о чём будет подробно рассказано ниже. Синтетические тесты пропускной способности показывают разрыв почти в 40 % между DDR4-2666 и DDR4-3800, а также 15-процентное преимущество DDR4-3800 перед DDR4-3200. К этому стоит добавить и почти столь же заметное уменьшение практической латентности при переходе на более быстрые типы памяти. Довольно отчётливо преимущество быстрой памяти проявляется и в приложениях. В тех задачах, где быстрый доступ к памяти действительно важен, DDR4-3800 позволяет получить выигрыш до 7 % по сравнению с аналогичной системой, но с DDR4-3200. Заметно реагируют на повышение частоты памяти и игры. Смена DDR4-3200 на DDR4-3800 приносит прирост FPS, достигающий в некоторых случаях 8 % (или 5 % в среднем). Но гораздо более убедительная картина получается, если с максимально быстрой памятью сравнить DDR4-2666 – здесь правомерно говорить, что низкочастотная память способна срезать игровую производительность и на 15, и даже на 20 %. Но точку ставить рано, поскольку подвешенным остаётся вопрос относительно производительности тестового Ryzen 7 5800X с DDR4-4000. Казалось бы, такая память должна обеспечить ещё более высокие показатели в тестах, но на диаграммах мы видим обратную картину. Короткое объяснение этого парадокса состоит в том, что для DDR4-4000 в процессорах семейства Ryzen 5000 приходится активировать асинхронный режим контроллера памяти, что приводит к ощутимому росту латентностей. Но об этом явлении стоит поговорить более подробно – синхронизации внутренних частот Ryzen 5000, связанных с работой контроллера памяти, будет посвящён следующий раздел.
⇣ Содержание
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
|