Домой / Видео / Частота оперативной памяти 1600 мгц. Габариты планок или так называемый Форм — фактор. Объём оперативной памяти

Частота оперативной памяти 1600 мгц. Габариты планок или так называемый Форм — фактор. Объём оперативной памяти

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

Для этого были взяты следующие модели ЦП:

  • Core i7-3770К;
  • Core i3-3240;
  • FX-8320;
  • A10-5800K.

Работать они будут в связке с оперативной памятью, функционирующей на следующих частотах:

  • DDR3 2133 МГц;
  • DDR3 1866 МГц;
  • DDR3 1600 МГц;
  • DDR3 1333 МГц;
  • DDR3 1066 МГц.

В графическую подсистему вошли видеокарты GeForce GTX 780 3072 Мбайт и Radeon R9 290X 4096 Мбайт. Сделано это для того, чтобы наиболее полно изучить поставленную цель материала.

Тестовая конфигурация

Тесты проводились на следующем стенде:

  • Материнская плата №1: GigaByte GA-Z77X-UD5H, LGA 1155, BIOS F14;
  • Материнская плата №2: GigaByte GA-990FXA-UD5, АМ3+, BIOS F12;
  • Материнская плата №3: ASRock FM2A85X Extreme4, FM2, BIOS 1.70;
  • Видеокарта №1: GeForce GTX 780 3072 Мбайт - 863/6008 МГц (Palit);
  • Видеокарта №2: Radeon R9 290X 4096 Мбайт - 1000/5000 Мбайт (Sapphire);
  • Система охлаждения CPU: Corsair Hydro Series H100 (~1300 об/мин);
  • Оперативная память: 2 x 4096 Мбайт DDR3 Geil BLACK DRAGON GB38GB2133C10ADC (Spec: 2133 МГц / 10-11-11-30-1t / 1.5 В) , X.M.P. - off;
  • Дисковая подсистема: 64 Гбайта, SSD ADATA SX900;
  • Блок питания: Corsair HX850 850 Ватт (штатный вентилятор: 140 мм на вдув);
  • Корпус: открытый тестовый стенд;
  • Монитор: 27" ASUS PB278Q BK (Wide LCD, 2560x1440 / 60 Гц).

Процессоры:

  • Core i7-3770К @ 4600 МГц;
  • Core i3-3240 @ 3400 МГц;

  • FX-8350 BE @ 4600 МГц;
  • A10-5800K @ 4500 МГц.

Программное обеспечение:

  • Операционная система: Windows 7 x64 SP1;
  • Драйверы видеокарты: NVIDIA GeForce 335.23 WHQL и AMD Catalyst 14.3 Beta.
  • Утилиты: FRAPS 3.5.9 Build 15586, AutoHotkey v1.0.48.05, MSI Afterburner 3.0.0 Beta 19.

Инструментарий и методика тестирования

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

В качестве средств измерения быстродействия применялись встроенные бенчмарки, утилиты FRAPS 3.5.9 Build 15586 и AutoHotkey v1.0.48.05. Список игровых приложений:

  • Assassin"s Creed 3 (Бостонский порт).
  • Batman Arkham City (Бенчмарк).
  • Call of Duty: Black Ops 2 (Ангола).
  • Crysis 3 (Добро пожаловать в джунгли).
  • Far Cry 3 (Глава 2. Охотники).
  • Formula 1 2012 (Бенчмарк).
  • Hard Reset (Бенчмарк).
  • Hitman: Absolution (Бенчмарк).
  • Medal of Honor: Warfighter (Сомали).
  • Saints Row IV (Начало игры).
  • Sleeping Dogs (Бенчмарк).
  • The Elder Scrolls V: Skyrim (Солитьюд).

Во всех играх замерялись минимальные и средние значения FPS. В тестах, в которых отсутствовала возможность замера минимального FPS , это значение измерялось утилитой FRAPS. VSync при проведении тестов был отключен.

Разгон процессоров

Процессоры разгонялись следующим образом. Стабильность разгона проверялась утилитой ОССТ 3.1.0 «Perestroika» путем получасового прогона ЦП на максимальной матрице с принудительной 100% нагрузкой. Соглашусь с тем, что разгон тестируемых CPU не является абсолютно стабильным, но для любой современной игры он подходит на все сто.

При максимальном разгоне у всех процессоров AMD частота контроллера памяти была поднята до 2400-2800 МГц.

Core i7-3770К

Процессор разогнан до частоты 4600 МГц. Для этого множитель был поднят до 46 (100х46), напряжение питания – до 1.2 В, напряжение питания DDR3 – 1.5 В, Turbo Boost – выключен, Hyper Threading – выключен.

Core i3-3240

Штатный режим. Тактовая частота 3400 МГц, базовая частота 100 МГц (100х34), напряжение питания 1.1 В, напряжение питания DDR3 – 1.5 В, Hyper Threading – включен.

  • Частота DDR3 – 2133 МГц (100х21.33);
  • Частота DDR3 – 1866 МГц (100х18.66);
  • Частота DDR3 – 1600 МГц (100х16.0);
  • Частота DDR3 – 1333 МГц (100х13.33);
  • Частота DDR3 – 1066 МГц (100х10.66).

FX-8320 BE

Процессор разогнан до частоты 4600 МГц. Для этого множитель процессора был поднят до значения 23 (200х23), напряжение питания ядра – до 1.53 В, напряжение питания DDR3 – 1.5 В, Turbo Core и APM – выключены.

  • Частота DDR3 – 2133 МГц (200х10.66);
  • Частота DDR3 – 1866 МГц (200х9.33);
  • Частота DDR3 – 1600 МГц (200х8.0);
  • Частота DDR3 – 1333 МГц (200х6.66);
  • Частота DDR3 – 1066 МГц (200х5.33).

A10-5800K

Процессор разогнан до частоты 4500 МГц. Для этого множитель процессора был поднят до значения 45 (100х45), напряжение питания ядра – до 1.45 В, напряжение питания DDR3 – 1.5 В, Turbo Core и APM – выключены.

  • Частота DDR3 – 2133 МГц (100х21.33);
  • Частота DDR3 – 1866 МГц (100х18.66);
  • Частота DDR3 – 1600 МГц (100х16.0);
  • Частота DDR3 – 1333 МГц (100х13.33);
  • Частота DDR3 - 1066 МГц (100х10.66).

Перейдем непосредственно к тестам.

Мое почтенье дорогие посетители сайта. В прошлой статье я писал о том, . Теперь, узнав что это такое и для чего и как оно служит, многие из Вас наверно подумываете о том, чтобы приобрести для своего компьютера более мощную и производительную оперативку. Ведь увеличение производительности компьютера с помощью дополнительного объёма памяти ОЗУ является самым простым и дешевым (в отличии например от видеокарты) методом модернизации вашего любимца.

И… Вот вы стоите у витрины с упаковками оперативок. Их много и все они разные. Встают вопросы: А какую оперативную память выбрать? Как правильно выбрать ОЗУ и не прогадать? А вдруг я куплю оперативку, а она потом не будет работать? Это вполне резонные вопросы. В этой статье я попробую ответить на все эти вопросы. Как вы уже поняли, эта статья займет свое достойное место в цикле статей, в которых я писал о том, как правильно выбирать отдельные компоненты компьютера т.е. железо. Если вы не забыли, туда входили статьи:



Этот цикл будет и дальше продолжен, и в конце вы сможете уже собрать для себя совершенный во всех смыслах супер компьютер 🙂 (если конечно финансы позволят:))
А пока учимся правильно выбирать для компьютера оперативную память .
Поехали!

Оперативная память и её основные характеристики.

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

Узнать о том, какую оперативную память поддерживает ваша материнка и процессор можно на сайте производителя, где необходимо найти модель своей материнской платы, а также узнать какие процессоры и оперативную память для них она поддерживает. Если этого не сделать, то получится, что вы купили супер современную оперативку, а она не совместима с вашей материнской платой и будет пылиться где нибудь у вас в шкафу. Теперь давайте перейдем непосредственно к основным техническим характеристикам ОЗУ, которые будут служить своеобразными критериями при выборе оперативной памяти. К ним относятся:

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

Тип оперативной памяти.

На сегодняшний день в мире наиболее предпочтительным типом памяти являются модули памяти DDR (double data rate). Они различаются по времени выпуска и конечно же техническими параметрами.

  • DDR или DDR SDRAM (в переводе с англ. Double Data Rate Synchronous Dynamic Random Access Memory — синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных). Модули данного типа имеют на планке 184 контакта, питаются напряжением в 2,5 В и имеют тактовую частоту работы до 400 мегагерц. Данный тип оперативной памяти уже морально устарел и используется только в стареньких материнских платах.
  • DDR2 — широко распространенный на данное время тип памяти. Имеет на печатной плате 240 контактов (по 120 на каждой стороне). Потребление в отличие от DDR1 снижено до 1,8 В. Тактовая частота колеблется от 400 МГц до 800 МГц.
  • DDR3 — лидер по производительности на момент написания данной статьи. Распространен не менее чем DDR2 и потребляет напряжение на 30-40% меньше в отличии от своего предшественника (1,5 В). Имеет тактовую частоту до 1800 МГц.
  • DDR4 — новый, супер современный тип оперативной памяти, опережающий своих собратьев как по производительности (тактовой частоте) так и потреблением напряжения (а значит отличающийся меньшим тепловыделением). Анонсируется поддержка частот от 2133 до 4266 Мгц. На данный момент в массовое производство данные модули ещё не поступили (обещают выпустить в массовое производство в середине 2012 года). Официально, модули четвертого поколения, работающие в режиме DDR4-2133 при напряжении 1,2 В были представлены на выставке CES, компанией Samsung 04 января 2011 года.

Объём оперативной памяти.

Про объём памяти много писать не буду. Скажу лишь, что именно в этом случае размер имеет значение 🙂
Все несколько лет назад оперативная память объёмом в 256-512 МБ удовлетворяла все нужды даже крутых геймерских компьютеров. В настоящее же время для нормального функционирования отдельно лишь операционной системы windows 7 требуется 1 Гб памяти, не говоря уже о приложениях и играх. Лишней оперативка никогда не будет, но скажу Вам по секрету, что 32-х разрядная windows использует лишь 3,25 Гб ОЗУ, если даже вы установите все 8 Гб ОЗУ. Подробнее об этом вы можете прочитать .

Габариты планок или так называемый Форм — фактор.

Form — factor — это стандартные размеры модулей оперативки, тип конструкции самих планок ОЗУ.
DIMM (Dual InLine Memory Module — двухсторонний тип модулей с контактами на обоих сторонах) — в основном предназначены для настольных стационарных компьютеров, а SO-DIMM используются в ноутбуках.

Тактовая частота.

Это довольно таки важный технический параметр оперативной памяти. Но тактовая частота есть и у материнской платы и важно знать рабочую частоту шины этой платы, так как если вы купили например модуль ОЗУ DDR3-1800 , а слот (разъём) материнской платы поддерживает максимальную тактовую частоту DDR3-1600 , то и модуль оперативной памяти в результате будет работать на тактовой частоте в 1600 МГц . При этом возможны всяческие сбои, ошибки в работе системы и .

Примечание: Частота шины памяти и частота процессора — совершенно разные понятия.

Из приведенных таблиц можно понять, что частота шины, умноженная на 2, дает эффективную частоту памяти (указанную в графе «чип»), т.е. выдает нам скорость передачи данных. Об этом же нам говорит и название DDR (Double Data Rate) — что означает удвоенная скорость передачи данных.
Приведу для наглядности пример расшифровки в названии модуля оперативной памяти — Kingston/PC2-9600/DDR3(DIMM)/2Gb/1200MHz , где:
— Kingston — производитель;
— PC2-9600 — название модуля и его пропускная способность;
— DDR3(DIMM) — тип памяти (форм фактор в котором выполнен модуль);
— 2Gb — объем модуля;
— 1200MHz — эффективная частота, 1200 МГц.

Пропускная способность.

Пропускная способность — характеристика памяти, от которой зависит производительность системы. Выражается она как произведение частоты системной шины на объём данных передаваемых за один такт. Пропускная способность (пиковый показатель скорости передачи данных) – это комплексный показатель возможности RAM , в нем учитывается частота передачи данных , разрядность шины и количество каналов памяти. Частота указывает потенциал шины памяти за такт – при большей частоте можно передать больше данных.
Пиковый показатель вычисляется по формуле: B = f * c , где:
В — пропускная способность, f — частота передачи, с — разрядность шины. Если Вы используете два канала для передачи данных, все полученное умножаем на 2. Чтобы получить цифру в байтах/c, Вам необходимо полученный результат поделить на 8 (т.к. в 1 байте 8 бит).
Для лучшей производительности пропускная способность шины оперативной памяти и пропускная способность шины процессора должны совпадать. К примеру, для процессора Intel core 2 duo E6850 с системной шиной 1333 MHz и пропускной способностью 10600 Mb/s , можно установить два модуля с пропускной способностью 5300 Mb/s каждый (PC2-5300 ), в сумме они будут иметь пропускную способность системной шины (FSB ) равную 10600 Mb/s .
Частоту шины и пропускную способность обозначают следующим образом: «DDR2-XXXX » и «PC2-YYYY «. Здесь «XXXX » обозначает эффективную частоту памяти, а «YYYY » пиковую пропускную способность.

Тайминги (латентность).

Тайминги (или латентность) — это временные задержки сигнала, которые, в технической характеристике ОЗУ записываются в виде «2-2-2 » или «3-3-3 » и т.д. Каждая цифра здесь выражает параметр. По порядку это всегда «CAS Latency » (время рабочего цикла), «RAS to CAS Delay » (время полного доступа) и «RAS Precharge Time » (время предварительного заряда).

Примечание

Чтобы вы могли лучше усвоить понятие тайминги, представьте себе книгу, она будет у нас оперативной памятью, к которой мы обращаемся. Информация (данные) в книге (оперативной памяти) распределены по главам, а главы состоят из страниц, которые в свою очередь содержат таблицы с ячейками (как например в таблицах Excel). Каждая ячейка с данными на странице имеет свои координаты по вертикали (столбцы) и горизонтали (строки). Для выбора строки используется сигнал RAS (Raw Address Strobe) , а для считывания слова (данных) из выбранной строки (т.е. для выбора столбца) — сигнал CAS (Column Address Strobe) . Полный цикл считывания начинается с открытия «страницы» и заканчивается её закрытием и перезарядкой, т.к. иначе ячейки разрядятся и данные пропадут.Вот так выглядит алгоритм считывания данных из памяти:

  1. выбранная «страница» активируется подачей сигнала RAS ;
  2. данные из выбранной строки на странице передаются в усилитель, причем на передачу данных необходима задержка (она называется RAS-to-CAS );
  3. подается сигнал CAS для выбора (столбца) слова из этой строки;
  4. данные передаются на шину (откуда идут в контроллер памяти), при этом также происходит задержка (CAS Latency );
  5. следующее слово идет уже без задержки, так как оно содержится в подготовленной строке;
  6. после завершения обращения к строке происходит закрытие страницы, данные возвращаются в ячейки и страница перезаряжается (задержка называется RAS Precharge ).

Каждая цифра в обозначении указывает, на какое количество тактов шины будет задержан сигнал. Тайминги измеряются в нано-секундах. Цифры могут иметь значения от 2 до 9 . Но иногда к трем этим параметрам добавляется и четвертый (например: 2-3-3-8 ), называющийся «DRAM Cycle Time Tras/Trc ” (характеризует быстродействие всей микросхемы памяти в целом).
Случается, что иногда хитрый производитель указывает в характеристике оперативки лишь одно значение, например «CL2 » (CAS Latency ), первый тайминг равный двум тактам. Но первый параметр не обязательно должен быть равен всем таймингам, а может быть и меньше других, так что имейте это в виду и не попадайтесь на маркетинговый ход производителя.
Пример для наглядности влияния таймингов на производительность: система с памятью на частоте 100 МГц с таймингами 2-2-2 обладает примерно такой же производительностью, как та же система на частоте 112 МГц , но с задержками 3-3-3 . Другими словами, в зависимости от задержек, разница в производительности может достигать 10 % .
Итак, при выборе лучше покупать память с наименьшими таймингами, а если Вы хотите добавить модуль к уже установленному, то тайминги у покупаемой памяти должны совпадать с таймингами установленной памяти.

Режимы работы памяти.

Оперативная память может работать в нескольких режимах, если конечно такие режимы поддерживаются материнской платой. Это одноканальный , двухканальный , трехканальный и даже четырехканальный режимы. Поэтому при выборе оперативной памяти стоит обратить внимание и на этот параметр модулей.
Теоретически скорость работы подсистемы памяти при двухканальном режиме увеличивается в 2 раза, трехканальном – в 3 раза соответственно и т.д., но на практике при двухканальном режиме прирост производительности в отличии от одноканального составляет 10-70%.
Рассмотрим подробнее типы режимов:

  • Single chanell mode (одноканальный или асимметричный) – этот режим включается, когда в системе установлен только один модуль памяти или все модули отличаются друг от друга по объему памяти, частоте работы или производителю. Здесь неважно, в какие разъемы и какую память устанавливать. Вся память будет работать со скоростью самой медленной из установленной памяти.
  • Dual Mode (двухканальный или симметричный) – в каждом канале устанавливается одинаковый объем оперативной памяти (и теоретически происходит удвоение максимальной скорости передачи данных). В двухканальном режиме модули памяти работают попарно 1-ый с 3-им и 2-ой с 4-ым.
  • Triple Mode (трехканальный) – в каждом из трех каналов устанавливается одинаковый объем оперативной памяти. Модули подбираются по скорости и объему. Для включения этого режима модули должны быть установлены в 1, 3 и 5/или 2, 4 и 6 слоты. На практике, кстати говоря, такой режим не всегда оказывается производительнее двухканального, а иногда даже и проигрывает ему в скорости передачи данных.
  • Flex Mode (гибкий) – позволяет увеличить производительность оперативной памяти при установке двух модулей различного объема, но одинаковых по частоте работы. Как и в двухканальном режиме платы памяти устанавливаются в одноименные разъемы разных каналов.

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

для трехканального режима

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

Производитель модулей.

Сейчас на рынке ОЗУ хорошо себя зарекомендовали такие производители, как: Hynix , amsung , Corsair , Kingmax , Transcend , Kingston , OCZ
У каждой фирмы к каждому продукту имеется свой маркировочный номер , по которому, если его правильно расшифровать, можно узнать для себя много полезной информации о продукте. Давайте для примера попробуем расшифровать маркировку модуля Kingston семейства ValueRAM (смотрите изображение):

Расшифровка:

  • KVR – Kingston ValueRAM т.е. производитель
  • 1066/1333 – рабочая/эффективная частота (Mhz)
  • D3 — тип памяти (DDR3 )
  • D (Dual) – rank/ранг . Двухранговый модуль – это два логических модуля, распаянных на одном физическом и пользующихся поочерёдно одним и тем же физическим каналом (нужен для достижения максимального объёма оперативной памяти при ограниченном количестве слотов)
  • 4 – 4 чипа памяти DRAM
  • R – Registered , указывает на стабильное функционирование без сбоев и ошибок в течение как можно большего непрерывного промежутка времени
  • 7 – задержка сигнала (CAS=7 )
  • S – термодатчик на модуле
  • K2 – набор (кит) из двух модулей
  • 4G – суммарный объем кита (обеих планок) равен 4 GB.

Приведу еще один пример маркировки CM2X1024-6400C5 :
Из маркировки видно, что это модуль DDR2 объемом 1024 Мбайт стандарта PC2-6400 и задержками CL=5 .
Марки OCZ , Kingston и Corsair рекомендуют для оверклокинга, т.е. имеют потенциал для разгона. Они будут с небольшими таймингами и запасом тактовой частоты, плюс ко всему они снабжены радиаторами, а некоторые даже кулерами для отвода тепла, т.к. при разгоне количество тепла значительно увеличивается. Цена на них естественно будет гораздо выше.
Советую не забывать про подделки (их на прилавках очень много) и покупать модули оперативной памяти только в серьезных магазинах, которые дадут Вам гарантию.

Напоследок:
На этом все. С помощью данной статьи, думаю, вы уже не ошибетесь при выборе оперативной памяти для своего компьютера. Теперь вы сможете правильно выбрать оперативку для системы и повысить её производительность без каких либо проблем. Ну, а тем кто купит оперативную память (или уже купил), я посвящу следующую статью, в которой я подробно опишу как правильно устанавливать оперативную память в систему. Не пропустите…

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

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

Зависимость общей производительности системы от памяти имеет сложный характер, что затрудняет прямую оценку скорости памяти, то есть сравнения различных модулей. Например, память с частотой 1600 МГц имеет вдвое большую пропускную способность, чем 800-мегагерцовая. И синтетические тесты памяти прилежно выведут столбик в два раза выше. Но если вы протестируете целую систему с этими двумя видами памяти с помощью популярных тестовых приложений, на которых обычно тестируют процессоры, то и близко не получите двухкратной разницы в производительности. Интегральный индекс быстродействия может отличаться максимум на несколько десятков процентов.

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

Краткая теория

Чтобы понять специфику проблемы, рассмотрим принципиальную схему взаимодействия приложения, ЦП и подсистемы памяти. Уже давно для описания работы центрального процесса считается удачной аналогия с заводским конвейером. И движутся по этому конвейеру инструкции из программного кода, а функциональные модули процессора обрабатывают их словно станки. Тогда современные многоядерные ЦП будут подобны заводам с несколькими цехами. Например, работу технологии Hyper-Threading можно сравнить с конвейером, по которому едут вперемешку детали сразу нескольких автомобилей, и умные станки обрабатывают их одновременно, по метке на деталях определяя, к какой модели машины они относятся. Например, собирается красная и синяя машины, тогда красящий станок использует красную краску для деталей красной машины и синюю краску для синей. И поток деталей сразу для двух моделей позволяет лучше загрузить станки. А если аппарат для покраски будет иметь два распылителя, и сможет красить одновременно две детали в разные цвета, конвейер сможет работать на полную мощность вне зависимости от того, в каком порядке будут поступать детали. Наконец, последний писк моды, реализуемый в будущих процессорах AMD, в которых различные ядра ЦП будут иметь некоторые общие функциональные блоки, можно сравнить с идеей сделать часть особо громоздких и дорогих станков общей для двух цехов, чтобы сэкономить заводскую площадь и сократить капитальные затраты.

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

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

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

Другие же программы имеют так называемый локальный доступ к памяти, то есть они читают или пишут в близко расположенные ячейки памяти - им относительно безразлична скорость случайного доступа. Это свойство программ объясняет эффект от наращивания объемов кэш-памяти в процессорах, которая, благодаря близкому расположению к ядру, в десятки раз быстрее. Даже если программа требует, например, 512 МБ общей памяти, в каждый отдельный небольшой промежуток времени (например, миллион тактов, то есть одна миллисекунда), программа может работать только с несколькими мегабайтами данных, которые успешно помещаются в кэше. И потребуется только обновлять время от времени содержимое кэша, что, в общем, происходит быстро. Но может быть и обратная ситуация: программа занимает всего 50 МБ памяти, но постоянно работает со всем этим объемом. А 50 МБ значительно превышают типичный размер кэша существующих настольных процессоров, и, условно говоря, 90% обращений к памяти (при размере кэша в 5 МБ) не кэшируются, то есть 9 из 10 обращений идут непосредственно в память, так как необходимых данных нет в кэше. И общая производительность будет почти полностью лимитирована скоростью памяти, так как процессор практически всегда будет находиться в ожидании данных.

Время доступа к памяти в случае, когда данных нет в кэше, составляет сотни тактов. И одна инструкция обращения к памяти по времени равноценна десяткам арифметических.

«Памятенезависимые» приложения

Позволим себе один раз использовать такой корявый термин для приложений, производительность в которых на практике не зависит от смены модулей на более высокочастотные и низколатентные. Откуда вообще такие приложения берутся? Как мы уже отметили, все программы имеют различные требования к памяти, в зависимости от используемого объема и характера доступа. Каким-то программам важна только общая ПСП, другие, наоборот, критичны к скорости доступа к случайным участкам памяти, которая иначе называется латентностью памяти. Но очень важно также, что степень зависимости программы от параметров памяти во многом определяется характеристиками центрального процессора - прежде всего, размером его кэша, так как при увеличении объема кэш-памяти рабочая область программы (наиболее часто используемые данные) может поместиться целиком в кэш процессора, что качественно ускорит программу и сделает её малочувствительной к характеристикам памяти.

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

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

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

Еще одна причина, по которой пользователь может не обнаружить разницы при смене памяти, состоит в том, что она и так слишком быстрая для используемого процессора. Если бы сейчас все процессоры вдруг замедлились в 10 раз, то для производительности системы в большинстве программ стало бы абсолютно все равно, какой тип памяти в ней установлен - хоть DDR-400, хоть DDR3-1600. А если бы ЦП радикально ускорились, то производительность значительной части программ наоборот стала бы гораздо существеннее зависеть от характеристик памяти.

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

«Памятезависимые» приложения

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

Тут сразу вспоминаются игрушки-стратегии со сложным и «медленным» искусственным интеллектом (ИИ). Ими никто не любит тестировать ЦП, так как инструменты для оценки либо отсутствуют, либо характеризуются большими погрешностями. На скорость выработки решения алгоритмом ИИ влияют множество факторов - например, иногда закладываемая в ИИ вариативность решений, чтобы сами решения выглядели более «человеческими». Соответственно, и реализация различных вариантов поведения занимает разное время.

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

Достаточно сильно от производительности памяти могут зависеть и игры других жанров, пусть не со столь умным искусственным интеллектом, зато с собственными алгоритмами имитации виртуального мира, включая физическую модель. Впрочем, они на практике чаще всего упираются в производительность видеокарты, поэтому тестировать на них память также бывает не очень удобно. Кроме того, важным параметром комфортного игрового процесса в трехмерных играх от «первого лица» является минимальное значение fps: его возможное проседание в пылу жестокой битвы может иметь самые плачевные для виртуального героя последствия. А минимальный fps тоже, можно сказать, невозможно измерить. Опять же - из-за вариативного поведения ИИ, особенностей расчета «физики» и случайных системных событий, которые тоже могут приводить к проседанию. Как прикажете в таком случае анализировать полученные данные?

Тестирование скорости игр в демо-роликах имеет ограниченное применение еще и потому, что не все части игрового движка бывают задействованы для воспроизведения демки, и в реальной игре на скорость могут влиять иные факторы. Причем даже в таких наполовину искусственных условиях минимальный fps непостоянен, и его редко приводят в отчетах о тестировании. Хотя, повторимся, это наиболее важный параметр, и в тех случаях, когда идет обращение к данным, проседание fps весьма вероятно. Ведь современные игры, в силу своей сложности, разнообразия кода, включающего помимо поддержки физического движка и искусственного интеллекта также подготовку графической модели, обработку звука, передачу данных через сеть и пр., очень зависят как от объема, так и от производительности памяти. Кстати, будет заблуждением считать, что графический процессор обрабатывает сам всю графику: он только рисует треугольники, текстуры и тени, а формированием команд все равно занимается ЦП, и для сложной сцены это вычислительно емкая задача. К примеру, когда вышел Athlon 64 с интегрированным контроллером памяти, наибольший прирост в скорости по сравнению со старым Athlon был именно в играх, хотя там не использовались 64-битность, SSE2 и другие новые «фишки» Athlon 64. Именно существенное повышение эффективности работы с памятью благодаря интегрированному контроллеру сделало тогдашний новый процессор AMD чемпионом и лидером по производительности в первую очередь в играх.

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

Ещё одним принципиальным случаем усиленной зависимости от памяти является режим многозадачности, то есть запуск нескольких ресурсоемких приложений одновременно. Вспомним снова все тот же AMD Athlon 64 с интегрированным контроллером памяти, который к моменту анонса Intel Core выпускался уже в двухъядерном варианте. Когда вышел Intel Core на новом ядре, процессоры AMD стали проигрывать везде, кроме SPEC rate - многопоточном варианте SPEC CPU, когда запускается столько копий тестовой задачи, сколько ядер в системе. Новое интеловское ядро, обладая большей вычислительной мощностью, тупо затыкалось в этом тесте в производительность памяти, и даже большой кэш и широкая шина памяти не помогали.

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

А вот если запустить на ПК сразу несколько различных приложений, нагрузка на память возрастет многократно. Это произойдет по двум причинам: во-первых, кэш-память будет поделена между несколькими задачами, то есть каждой достанется только часть. В современных ЦП кэш L2 или L3 - общий для всех ядер, и если одна программа использует много потоков, то они все могут выполняться на своем ядре и работать с общим массивом данных в L3-кэше, а если программа однопоточна, то ей достается весь объем L3 целиком. Но если потоки принадлежат различным задачам, объем кэша будет вынужденно делиться между ними.

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

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

Типичным примером такой ситуации на ПК будет одновременный запуск игры, «скайпа», антивируса и программы кодирования видеофайла. Пусть не типичная, но совсем не фантастическая ситуация, в которой очень сложно корректно измерить скорость работы, так как на результат влияют действия планировщика в составе ОС, который при каждом замере может по-иному распределять задачи и потоки по разным ядрам и давать им различные приоритеты, временны́е интервалы и делать это в разной последовательности. И опять-таки, наиболее важным параметром будет пресловутая плавность работы - характеристика, по аналогии с минимальным fps в играх, которую в данном случае измерить еще сложнее. Что толку от запуска игры или какой-то другой программы одновременно с кодированием видеофайла, если поиграть нормально не удастся из-за рывков изображения? Пусть даже видеофайл быстро сконвертируется, поскольку многоядерный процессор в данном случае может быть и недогружен. Здесь нагрузка на систему памяти будет гораздо больше, чем при исполнении каждой из перечисленных задач по отдельности.

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

Проблемы тестирования

Сразу целая группа факторов снижает чувствительность ЦП-ориентированных тестов к скорости памяти. Очень чувствительные к памяти программы представляют собой плохие тесты ЦП - в том смысле, что они слабо реагируют на модель ЦП. Такие программы могут различать процессоры с контроллером памяти, снижающим латентность доступа к памяти, и без оного, но при этом в пределах одного семейства почти не реагировать на частоту процессора, показывая сходные результаты при работе на частоте 2500 и 3000 МГц. Часто такие приложения отбраковываются как тесты ЦП, ибо тестеру просто непонятно, что лимитирует их производительность, и кажется, что дело в «чудачествах» самой программы. Будет удивительно, если все процессоры (и AMD, и Intel) покажут в тесте одинаковый результат, но такое вполне возможно для приложения, очень сильно зависимого от памяти.

Чтобы избежать упреков в необъективности и вопросов, почему выбрана та или иная программа, в тесты стараются включать только наиболее популярные приложения, которыми все пользуются. Но такая выборка не совсем репрезентативна: наиболее популярные приложения из-за своей массовости часто очень хорошо оптимизированы, а оптимизация программы начинается с оптимизации её работы с памятью - она важнее, например, чем оптимизация под SSE1-2-3-4. Но совсем не все на свете программы так хорошо оптимизируются; попросту на все программы не хватит программистов, которые умеют писать быстрый код. Опять возвращаясь к популярным программам кодирования, многие из них были написаны при непосредственном активном участии инженеров фирм-изготовителей ЦП. Как и некоторые другие популярные ресурсоемкие программы, в частности медленные фильтры двухмерных графических редакторов и движки рендеринга студий трехмерного моделирования.

В свое время было популярно сравнивать компьютерные программы с дорогами. Эта аналогия потребовалась, чтобы объяснить, почему на некоторых программах быстрее работает Pentium 4, а на некоторых Athlon. Интеловский процессор не любил ветвления и быстрее «ехал» по прямым дорогам. Это очень упрощенная аналогия, но она удивительно хорошо передает суть. Особенно интересно, когда две точки на карте соединяют две дороги - «оптимизированная» прямая качественная дорога и «неоптимизированная» кривая ухабистая. В зависимости от выбора одной из дорог, ведущих к цели, выигрывает тот или иной процессор, хотя в каждом случае они делают одно и тоже. То есть на неоптимизированном коде выигрывает Athlon, а при простой оптимизации приложения выигрывает Pentium 4 - и сейчас мы даже не говорим о специальной оптимизации под архитектуру Netburst: в таком случае Pentium 4 мог бы посоревноваться даже с Сore. Другое дело, что хорошие «оптимизированные» дороги строить дорого и долго, и это обстоятельство во многом предопределило печальную участь Netburst.

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

Специальный тест памяти

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

Какие плюсы есть у такого подхода? Их очень много. В отличие от «натуральных» программ, возможен контроль над объемом используемой памяти, контроль над её распределением, контроль над количеством потоков. Специальное контролируемое выделение памяти позволяет нивелировать влияние особенностей менеджера памяти программы и операционной системы на производительность, чтобы результаты были не зашумлены, и можно было корректно и быстро тестировать. Точность измерения позволяет производить тест за относительно небольшое время и оценить большее количество конфигураций.

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

В качестве модельной задачи была взята модификация теста Astar из SPEC CPU 2006 Int (кстати, предложенный для включения в этот пакет автором статьи; для теста памяти использован адаптированный для графов алгоритм) и задача сортировки данных с помощью различных алгоритмов. Программа Astar имеет сложный алгоритм с комплексным доступом к памяти, а алгоритмы сортировки числового массива - базовая задача программирования, использующаяся во множестве приложений; она включена, в том числе, для дополнительного подтверждения результатов сложного теста данными производительности простой, но распространенной и классической задачи.

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

Согласно исследованиям набора тестов SPEC CPU 2006, тест Astar - один из нескольких, в наибольшей мере коррелирующих с общим результатом пакета на x86-совместимых процессорах. Но в нашем тесте памяти объем используемых программой данных был увеличен, так как со времени выпуска теста SPEC CPU 2006 типичный объем памяти возрос. Также программа приобрела внутреннюю многопоточность.

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

Программа осуществляет операции с графом, соединяющим пункты карты. То есть каждый элемент содержит ссылки на соседние, они как бы соединены дорогами. Есть два подтеста: в одном граф строится на основе двухмерной матрицы, то есть плоской карты, а во втором - на основе трехмерной матрицы, которая представляет собой некий сложный массив данных. Структура данных аналогична так называемым спискам - популярному способу организации данных в программах с динамическим созданием объектов. Такой тип адресации в целом характерен для объектно-ориентированного ПО. В частности, это практически все финансовые, бухгалтерские, экспертные приложения. И характер их обращений к памяти разительно контрастирует с типом доступа у оптимизированных на низком уровне вычислительных программ, вроде программ видеокодирования.

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

Таким образом, в первой версии теста получается 6 подтестов:

  • Поиск пути на 2D-матрице, общая карта
  • Поиск пути на 2D-матрице, отдельная карта для каждого потока
  • Поиск пути на 3D-матрице, общая карта
  • Поиск пути на 3D-матрице, отдельная карта для каждого потока
  • Сортировка массива с использованием алгоритма quicksort (локальный доступ к памяти)
  • Сортировка массива с использованием алгоритма heapsort (сложный доступ к памяти)

Результаты теста

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

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

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

Также тест может быть использован для оценки масштабируемости процессоров по частоте при разгоне или внутри модельного ряда. Он позволяет понять, с какой частоты процессор начинает «затыкаться» в память. Часто процессор формально разгоняется сильно, и синтетические тесты, основанные на выполнении простых арифметических операций, показывают соответствующий изменению частоты прирост, но в памятезависимом приложении прироста может и не быть вообще из-за отсутствия соответствующего прироста в скорости памяти. Другая причина заключается в том, что ядро ЦП теоретически может потреблять больше энергии в случае сложного приложения и начнет либо сбоить, либо само снижать частоту, что не всегда возможно выявить в простых арифметических тестах.

Заключение

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

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

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

Производительность оперативной памяти | Может ли память ограничивать частоту кадров в играх?

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

Поэкспериментировав с настройками памяти в одной из игр, мы заметили заметную прибавку в скорости работы. После обзора "FX против Core i7: является ли CPU в играх бутылочным горлышком?" у нас осталась готовая тестовая система, поэтому сейчас - самый подходящий момент, чтобы сделать ещё одну версию анализа игр, но с большим упором на память.

Сказанное нами шесть лет назад по поводу частоты и таймингов актуально и сегодня. Задержка CAS по-прежнему измеряется в циклах, циклы DDR3-2133 по-прежнему в два раза быстрее, чем DDR3-1066, а у DDR3-2133 CAS 10 осталось такое же время отклика, как у DDR3-1066 CAS 5. Более того, DDR3-2133 также предлагает в два раза больше пропускной способности, чем DDR3-1066.

К счастью, если бюджет ограничен, не обязательно зацикливаться на модулях DDR3-1066, а для повышения пропускной способности можно уменьшить значение CAS, которое для большинства модулей легко спустится ниже базового значения 10. Кроме того, дешёвая память DDR3-1600 и средняя по цене DDR3-2133 CAS 9 теперь стоит почти столько же.

Мы вооружены разогнанным CPU и двумя видеокартами Radeon HD 7970 в CrossFire, которые помогут избежать узких мест. Итак, каким образом изменения в конфигурации памяти повлияют на производительность в играх?

Производительность оперативной памяти | Конфигурация и тесты

Тестовая конфигурация
CPU Intel Core i7-3960X (Sandy Bridge-E): 6ядер/12потоков 3,3 ГГц, 12 Мбайт общего кэша L3, LGA 2011 разгон до 4,4 ГГц (44 x 100 МГц) при напряжении ядра 1,325 В
Материнская плата Asus P9X79, BIOS 3203 (11/26/2012)
Кулер CPU Coolink Corator DS 120 мм Tower, термопаста w/Zalman ZM-STG1
Сеть Встроенный контроллер Gigabit LAN
Память G,Skill F3-17600CL9Q-16GBXLD (16 Гбайт) DDR3-2200 CAS 9-11-9-36 1,65 В
Видеокарта 2 x MSI R7970-2PMD3GD5/OC: GPU 1010 МГц, GDDR5-5500
Накопитель Mushkin Chronos Deluxe DX 240 Гбайт, SATA 6 Гбит/с SSD
Питание Seasonic X760 SS-760KM: ATX12V v2,3, EPS12V, 80 PLUS Gold
ПО и драйвера
Операционная система Microsoft Windows 8 Professional RTM x64
Графический драйвер AMD Catalyst 12.10

Платформа Intel LGA 2011 обладает достаточной гибкостью для тестов как двухканальной, так и четырёхканальной конфигурации памяти. ASUS P9X79 и разогнанный Core i7-3760X со степпингом C2 мы взяли из предыдущих обзоров.

Из-за базовой частоты в 100 МГц, системная плата P9X79 настроила старые модули G.Skill DDR3-2200 CAS 9 в режим DDR3-2133 CAS 9-11-9-28. Для тестов DDR3-1600 C9 мы использовали такую же память и тайминги. В варианте с пониженными таймингами используется эта же память в режиме DDR3-1600 CAS 7-9-7-21.

Если у вас есть пара карт Radeon HD 7970, вполне вероятно, что вы играете на разрешении 2560x1600 пикселей или больше. Мы начали с разрешения 1920x1080 пикселей и повышали его до 5760x1080 пикселей.

Конфигурация тестов (3D-игры)
Aliens vs. Predator Использование AvP Tool v.1.03, SSAO/тесселяция/тени вкл.
Тестовая конфигурация 1: качество текстур High, без AA, 4x AF
Тестовая конфигурация 2: качество текстур Very High, 4x AA, 16x AF
Battlefield 3 Режим кампании, "Going Hunting" 90-секунд Fraps
Тестовая конфигурация 1: качество Medium (без AA, 4x AF)
Тестовая конфигурация 2: качество Ultra (4x AA, 16x AF)
F1 2012 Версия Steam, встроенный бенчмарк
Тестовая конфигурация 1: качество High, без AA
Тестовая конфигурация 2: качество Ultra, 8x AA
Elder Scrolls V: Skyrim Обновление 1.7, Celedon Aethirborn уровень 6, 25-секунд Fraps
Тестовая конфигурация 1: DX11, уровень детализации High без AA, 8x AF, FXAA вкл.
Тестовая конфигурация 2: DX11, уровень детализации Ultra, 8x AA, 16x AF, FXAA вкл.
Metro 2033 Полная версия, встроенный бенчмарк, сцена "Frontline"
Тестовая конфигурация 1: DX11, High, AAA, 4x AF, без PhysX, без DoF
Тестовая конфигурация 2: DX11, Very High, 4x AA, 16x AF, без PhysX, DoF вкл.

Производительность оперативной памяти | Результаты тестов

Хотя 3DMark и не отражает реальную производительность в играх, он всё же позволяет легко сравнить показатели различных конфигураций. Также он показывает, что в тесте Physics с уменьшением скорости передачи данных памяти результат ухудшается. В этом есть смысл, поскольку пакет Physics даёт нагрузку на все вычислительные ядра. Нехватка данных для них – это верный путь снижения производительности.


В игре Aliens vs. Predator разница между различными конфигурациями памяти минимальна, даже на разрешении 2560x1600 пикселей частота кадров, похоже, сдерживается мощной комбинацией двух GPU Radeon HD 7970.


Результаты F1 и Metro 2033

Результаты F1 2012 наполняют смыслом всю нашу сегодняшнюю затею. Каждый шаг в увеличении пропускной способности памяти даёт заметный прирост скорости работы.


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


Metro 2033, секунда за секундой

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


Когда в качестве минимальной средней частоты кадров мы выбираем уровень 40 FPS, на самом деле мы отслеживаем, чтобы частота кадров не опускалась ниже 20 FPS. Наши видеокарты могут удержать такой уровень на настройках детализации Very High даже с памятью, установленной в режим DDR3-1600 CAS 9.


К сожалению, при разрешении 4800x900 пикселей уровень производительности на настройках Very High назвать нормальным никак нельзя. Чтобы игра работала на 5760x1080 пикселей, нам пришлось понизить детализацию.


При появлении в Metro 2033 дыма или тумана производительность существенно падает. Хорошо, что эти проседания во время геймплея на разрешении 5760x1080 пикселей с отключённым MSAA незаметны. Однако нас беспокоит, что с четырёхканальной конфигурацией впадины на графике ниже, ведь с увеличением пропускной способности ожидаешь уменьшения минимального порога, но никак не увеличения.

Battlefield 3 и Skyrim

Колебания производительности в Battlefield 3 слишком малы, чтобы отнести их к различиям в конфигурации. В таком случае, дешёвая память DDR3-1600 занимает здесь более выгодную позицию.


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


Battlefield 3, кадр за кадром

Время рендеринга одного кадра более показательно, чем среднее количество кадров, поскольку именно отдельные медленные кадры разрушают погружение в игру, в результаты вы теряете концентрацию, врезаетесь в стену, либо вас убивают. Когда рекомендуемая нами для игр средняя частота кадров составляет 40 FPS, а минимальная 20, очень важно, чтобы ни один кадр не рендерился более 50 миллисекунд. В данном тесте чем ниже значения, тем лучше (быстрее).






Часто при запуске игра может идти с рывками, но в данном случае рывки совпадают с включением Fraps. К счастью, ни в одном из прогонов скачки не превышают порога 50 мс.

Skyrim, кадр за кадром

Длительность кадра в Elder Scrolls V: Skyrim превысила 50 мс лишь на разрешении 5760x1080 пикселей, при котором у всех конфигураций наблюдаются проблемы.






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

Энергопотребление, средняя производительность и эффективность

Поскольку мы не используем разгон, то смогли понизить напряжение модулей, работающих в режиме DDR3-1600 C9 до 1,50 В и, соответственно, понизить общее энергопотребление системы на несколько ватт.

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

Intel XMP (Extreme Memory Profiles) – это настройки для автоматического разгона памяти. Поскольку более быстрая RAM повышает среднюю производительность в играх, с разгоном памяти эффективность системы увеличивается.

Производительность оперативной памяти | Пропускная способность и понижение таймингов иногда кое-что значат

Два из пяти игровых тестов: F1 2012 и The Elder Scrolls V: Skyrim продемонстрировали, что пропускная способность и тайминги могут существенно повлиять на частоту кадров в играх. Оба параметра оказываются одинаково важны. Такие результаты можно было предугадать, ведь эти две игры меньше ограничены графической подсистемой, чем другие.

С другой стороны, в Metro 2033, Battlefield 3 и Aliens vs. Predator мы вообще не заметили разницы. Производительность первых двух сильнее всего связана со скоростью графического адаптера (или адаптеров), установленного в системе, что объясняет, почему полоса пропускания и тайминги памяти не оказали существенного влияния. Появление долгих кадров, вызывающих проседания FPS, похоже, больше зависит от графической части системы, нежели от задержек или пропускной способности оперативной памяти.

Если говорить об играх, на производительность которых различия в памяти всё же влияют, то стоит отметить, что разницу во время геймплея можно заметить лишь в одной игре. Но даже в этом случае средняя частота кадров настолько высока, что ваши глаза (или мониторы) должны быть быстрее наших примерно в два раза, чтобы ощутить прирост от быстрой памяти на практике. В данном случае мы говорим об игре F1 2012, которая, в среднем, набирает более 100 FPS и всё равно масштабируется при ускорении работы памяти. На самом деле, такой уровень FPS важно поддерживать, если вы используете технологии AMD HD3D и Eyefinity одновременно, поскольку частота кадров для мониторов 60 Гц делится надвое. Если у вас нет трёх стереоскопических мониторов, большой прирост производительности к высокой частоте кадров нужен разве что для хвастовства.

История оперативной памяти , или ОЗУ , началась в далёком 1834 году, когда Чарльз Беббидж разработал «аналитическую машину» - по сути, прообраз компьютера. Часть этой машины, которая отвечала за хранение промежуточных данных, он назвал «складом». Запоминание информации там было организовано ещё чисто механическим способом, посредством валов и шестерней.

В первых поколениях ЭВМ в качестве ОЗУ использовались электронно-лучевые трубки, магнитные барабаны, позже появились магнитные сердечники, и уже после них, в третьем поколении ЭВМ появилась память на микросхемах.

Сейчас ОЗУ выполняется по технологии DRAM в форм-факторах DIMM и SO-DIMM , это динамическая память, организованная в виде интегральных схем полупроводников. Она энергозависима, то есть данные исчезают при отсутствии питания.

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

Типы памяти

SO-DIMM

Память форм-фактора SO-DIMM предназначена для использования в ноутбуках, компактных ITX-системах, моноблоках - словом там, где важен минимальный физический размер модулей памяти. Отличается от форм-фактора DIMM уменьшенной примерно в 2 раза длиной модуля, и меньшим количеством контактов на плате (204 и 360 контактов у SO-DIMM DDR3 и DDR4 против 240 и 288 на платах тех же типов DIMM-памяти).
По остальным характеристикам - частоте, таймингам, объёму, модули SO-DIMM могут быть любыми, и ничем принципиальным от DIMM не отличаются.

DIMM

DIMM - оперативная память для полноразмерных компьютеров.
Тип памяти, который вы выберете, в первую очередь должен быть совместим с разъёмом на материнской плате. ОЗУ для компьютера делится на 4 типа – DDR , DDR2 , DDR3 и DDR4 .

Память типа DDR появилась в 2001 году, и имела 184 контакта. Напряжение питания составляло от 2.2 до 2.4 В. Частота работы – 400МГц . До сих пор встречается в продаже, правда, выбор невелик. На сегодняшний день формат устарел, - подойдёт, только если вы не хотите обновлять систему полностью, а в старой материнской плате разъёмы только под DDR.

Стандарт DDR2 вышел уже в 2003-ем, получил 240 контактов, которые увеличили число потоков, прилично ускорив шину передачи данных процессору. Частота работы DDR2 могла составлять до 800 МГц (в отдельных случаях – до 1066 МГц), а напряжение питания от 1.8 до 2.1 В – чуть меньше, чем у DDR. Следовательно, понизились энергопотребление и тепловыделение памяти.
Отличия DDR2 от DDR:

· 240 контактов против 120
· Новый слот, несовместимый с DDR
· Меньшее энергопотребление
· Улучшенная конструкция, лучшее охлаждение
· Выше максимальная рабочая частота

Также, как и DDR, устаревший тип памяти - сейчас подойдёт разве что под старые материнские платы, в остальных случаях покупать нет смысла, так как новые DDR3 и DDR4 быстрее.

В 2007 году ОЗУ обновились типом DDR3 , который до сих пор массово распространён. Остались всё те же 240 контактов, но слот подключения для DDR3 стал другим – совместимости с DDR2 нет. Частота работы модулей в среднем от 1333 до 1866 МГц . Встречаются также модули с частотой вплоть до 2800 МГц .
DDR3 отличается от DDR2:

· Слоты DDR2 и DDR3 несовместимы.
· Тактовая частота работы DDR3 выше в 2 раза – 1600 МГц против 800 МГц у DDR2.
· Отличается сниженным напряжением питания – порядка 1.5В, и меньшим энергопотреблением (в версии DDR3L это значение в среднем ещё ниже, около 1.35 В).
· Задержки (тайминги) DDR3 больше, чем у DDR2, но рабочая частота выше. В целом скорость работы DDR3 на 20-30% выше.

DDR3 - на сегодня хороший выбор. Во многих материнских платах в продаже разъёмы под память именно DDR3, и в связи с массовой популярностью этого типа, вряд ли он скоро исчезнет. Также он немного дешевле DDR4.

DDR4 – новый тип ОЗУ, разработанный только в 2012 году. Является эволюционным развитием предыдущих типов. Пропускная способность памяти снова повысилась, теперь достигая 25,6 Гб/с. Частота работы также поднялась – в среднем от 2133 МГц до 3600 МГц . Если же сравнивать новый тип с DDR3, который продержался на рынке целых 8 лет и получил массовое распространение, то прирост производительности незначителен, к тому же далеко не все материнские платы и процессоры поддерживают новый тип.
Отличия DDR4:

· Несовместимость с предыдущими типами
· Пониженно напряжение питания – от 1.2 до 1.05 В, энергопотребление тоже снизилось
· Рабочая частота памяти до 3200 МГц (может достигать 4166 МГц в некоторых планках), при этом, конечно, выросшие пропорционально тайминги
· Может незначительно превосходить по скорости работы DDR3

Если у вас уже стоят планки DDR3, то торопиться менять их на DDR4 нет никакого смысла. Когда этот формат распространится массово, и все материнские платы уже будут поддерживать DDR4, переход на новый тип произойдёт сам собой с обновлением всей системы. Таким образом, можно подытожить, что DDR4 – скорее маркетинг, чем реально новый тип ОЗУ.

Какую частоту памяти выбрать?

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

На сегодняшний день не стоит выбирать память с частотой ниже 1600 МГц. Вариант 1333 МГц допустим в случае DDR3, если это не завалявшиеся у продавца древние модули, которые явно будут медленнее новых.

Оптимальный вариант на сегодня - это память с интервалом частот от 1600 до 2400 МГц . Частота выше почти не имеет преимущества, но стоит гораздо дороже, и как правило является разогнанными модулями с поднятыми таймингами. Для примера, разница между модулями в 1600 и 2133 Мгц в ряде рабочих программ будет не более 5-8 %, в играх разница может быть ещё меньше. Частоты в 2133-2400 Мгц стоит брать, если вы занимаетесь кодированием видео/аудио, рендерингом.

Разница же между частотами в 2400 и 3600 Мгц обойдётся вам довольно дорого, при этом не прибавив ощутимо скорости.

Какой объём оперативной памяти брать?

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

Объём 2 ГБ - на сегодняшний день, может хватить разве что только для просмотра интернета. Больше половину будет съедать операционная система, оставшегося хватит на неторопливую работу нетребовательных программ.

Объём 4 ГБ
– подойдёт для компьютера средней руки, для домашнего пк-медиацентра. Хватит, чтобы смотреть фильмы, и даже поиграть в нетребовательные игры. Современные – увы, с потянет с трудом. (Станет лучшим выбором, если у вас 32-разрядная операционная система Windows, которая видит не больше 3 ГБ оперативной памяти)

Объём 8 ГБ (или комплект 2х4ГБ) – рекомендуемый объём на сегодня для полноценного ПК. Этого хватит для почти любых игр, для работы с любым требовательным к ресурсам софтом. Лучший выбор для универсального компьютера.

Объём 16 ГБ (или наборы 2х8ГБ , 4х4ГБ)- будет оправданным, если вы работаете с графикой, тяжёлыми средами программирования, или постоянно рендерите видео. Также отлично подойдёт для ведения онлайн-стримов – здесь с 8 ГБ могут быть подвисания, особенно при высоком качестве видео-трансляции. Некоторые игры в высоких разрешениях и с HD-текстурами могут лучше себя вести с 16 ГБ оперативной памяти на борту.

Объём 32 ГБ (набор 2х16ГБ , или 4х8ГБ)– пока очень спорный выбор, пригодится для каких-то совсем экстремальных рабочих задач. Лучше будет потратить деньги на другие комплектующие компьютера, это сильнее отразится на его быстродействии.

Режимы работы: лучше 1 планка памяти или 2?

ОЗУ может работать в одно-канальном, двух-, трёх- и четырёх-канальном режимах. Однозначно, если на вашей материнской плате есть достаточное количество слотов, то лучше взять вместо одной планки памяти несколько одинаковых меньшего объёма. Скорость доступа к ним вырастет от 2 до 4 раз.

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

- Single chanell Mode – одноканальный режим работы. Включается, когда установлена одна планка памяти, или разные модули, работающие на разной частоте. В итоге память работает на частоте самой медленной планки.
- Dual Mode – двухканальный режим. Работает только с модулями памяти одинаковой частоты, увеличивает скорость работы в 2 раза. Производители выпускают специально для этого комплекты модулей памяти , в которых может быть 2 или 4 одинаковых планки.
- Triple Mode – работает по тому же принципу, что и двух-канальный. На практике не всегда быстрее.
- Quad Mode - четырёх-канальный режим, который работает по принципу двухканального, соответственно увеличивая скорость работы в 4 раза. Используется, там где нужна исключительно высокая скорость - например, в серверах.

- Flex Mode – более гибкий вариант двухканального режима работы, когда планки разного объёма, а одинаковая только частота. При этом в двухканальном режиме будут использоваться одинаковые объёмы модулей, а оставшийся объём будет функционировать в одноканальном.

Нужен ли памяти радиатор?

Сейчас уже давно не те времена, когда при напряжении в 2 В достигалась частота работы в 1600 МГц, и в результате выделялось много тепла, которое надо было как-то отводить. Тогда радиатор мог быть критерием выживаемости разогнанного модуля.

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

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



Что такое тайминги?

Тайминги , или латентность (latency) – одна из самых важных характеристик оперативной памяти, определяющих её быстродействие. Обрисуем общий смысл этого параметра.

Упрощённо оперативную память можно представить, как двумерную таблицу, в которой каждая ячейка несёт информацию. Доступ к ячейкам происходит по указанию номера столбца и строки, и указание это происходит при помощи стробирующего импульса доступа к строке RAS (Row Access Strobe ) и стробирующего импульса доступа к столбцу CAS (Acess Strobe ) путём изменения напряжения. Таким образом, за каждый такт работы происходят обращения RAS и CAS , и между этими обращениями и командами записи/чтения существуют определённые задержки, которые и называются таймингами.

В описании модуля оперативной памяти можно увидеть пять таймингов, которые для удобства записываются последовательностью цифр через дефис, например 8-9-9-20-27 .

· tRCD (time of RAS to CAS Delay) - тайминг, который определяет задержку от импульса RAS до CAS
· CL (timе of CAS Latency) - тайминг, определяющий задержку между командой о записи/чтении и импульсом CAS
· tRP (timе of Row Precharge) - тайминг, определяющий задержку при переходах от одной строки к следующей
· tRAS (time of Active to Precharge Delay) - тайминг, который определяет задержку между активацией строки и окончанием работы с ней; считается основным значением
· Command rate – определяет задержку между командой выбора отдельного чипа на модуле до команды активации строки; этот тайминг указывают не всегда.

Если говорить ещё проще, то о таймингах важно знать только одно – чем их значения меньше, тем лучше. При этом планки могут иметь одинаковую частоту работы, но разные тайминги, и модуль с меньшими значениями всегда будет быстрее. Так что стоит выбирать минимальные тайминги, для DDR4 ориентиром средних значений будут тайминги 15-15-15-36, для DDR3 - 10-10-10-30. Также стоит помнить, что тайминги связаны с частотой памяти, так что при разгоне скорее всего придётся поднять и тайминги, и наоборот - можно вручную опустить частоту, снизив при этом тайминги. Выгоднее всего обращать внимание на совокупность этих параметров, выбирая скорее баланс, и не гнаться за крайними значениями параметров.

Как определиться с бюджетом?

Располагая большей суммой, вы сможете позволить себе больший объём оперативной памяти. Основное отличие дешёвых и дорогих модулей будет в таймингах, частоте работы, и в бренде – известные, разрекламированные могут стоить немного дороже noname модулей непонятного производителя.
Кроме того, дополнительных денег стоит радиатор, установленный на модули. Далеко не всем планкам он нужен, но производители сейчас на них не скупятся.

Цена будет также зависеть от таймингов, чем они ниже- тем выше скорость, и соответственно, цена.

Итак, имея до 2000 рублей , вы сможете приобрести модуль памяти объёмом 4 ГБ, или 2 модуля по 2 ГБ, что предпочтительнее. Выбирайте в зависимости от того, что позволяет конфигурация вашего пк. Модули типа DDR3 обойдутся почти вдвое дешевле чем DDR4. При таком бюджете разумнее брать именно DDR3.

В группу до 4000 рублей входят модули объёмом в 8 ГБ, а также наборы 2х4 ГБ. Это оптимальный выбор для любых задач, кроме профессиональной работы с видео, и в любых других тяжёлых средах.

В сумму до 8000 рублей обойдётся объём памяти в 16 ГБ. Рекомендуется для профессиональных целей, или для заядлых геймеров - хватит даже про запас, в ожидании новых требовательных игр.

Если не проблема потратить до 13000 рублей , то самым лучшим выбором будет вложить их в набор из 4 планок по 4 ГБ. За эти деньги можно выбрать даже радиаторы покрасивее, возможно для последующего разгона.

Больше 16 ГБ без цели работы в профессиональных тяжёлых средах (да и то не во всех) брать не советую, но если очень хочется, то за сумму от 13000 рублей вы сможете залезть на Олимп, приобретя комплект на 32 ГБ или даже 64 ГБ . Правда, смысла для рядового пользователя или геймера в этом будет не много – лучше потратить средства, скажем, на флагманскую видеокарту.