Оригинал материала: https://3dnews.ru/172103

Оптимизация работы памяти DDR266 (PC2100)


Особый интерес представляет возможность повысить производительность системы с помощью настройки работы памяти (другой часто используемый термин "твикинг" памяти, от tweaking). Соответствующее иследование мы провели на примере платы Abit KX7-333, как имеющей один из самых богатых наборов различных настроек памяти доступных через BIOS.

В тестовой системе было использовано следующее оборудование:

  • Материнская плата Abit KX7-333;
  • 256 Мбайт PC2100 DDR SDRAM, производства Samsung;
  • Процессор AMD Athlon XP 1600+
  • Видеокарта MX440 на чипе NVidia GeForce4 64Mb (NVIDIA Detonator v28.32);
  • Звуковая карта Creative Live 5.1;
  • Жесткий диск IBM DTLA 307030 30Gb;
  • блок питания PowerMan 250W;
  • Операционная система Windows 2000 English SP1

Для демонстрации возможностей тонкой настройки памяти использовался тест Sisoft Sandra 2002 и игра Quake3 (производительность которой очень сильно зависит от пропускной способности памяти). Для большей наглядности я буду изменять каждый параметр отдельно и приводить значение производительности.

Тест с установками по умолчанию

Итак, начальные параметры:
  • CAS Latency = 2.5Т
  • Bank Interleave = Disable
  • DRAM Command Rate = 2T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T
  • Частота FSBЧастота работы памяти = 133Мгерц133Мгерц
Тест Значение
Sandra (Int) 1907
Sandra (Float) 1776
Quake3 (Fastest) 218,1 fps

Bank Interleave - 2 Bank

Изменяем параметр Bank Interleave, устанавливаем значение 2 Bank. Вообще этот параметр предназначен для управления доступом к открытым банкам памяти. Возможные значения: None, 2 Bank, 4 Bank (иногда 2-Way/4-Way). Наиболее производительным является 4 Bank.

Тест Значение
Sandra (Int) 1911
Sandra (Float) 1791
Quake3 (Fastest) 222,9 fps

Bank Interleave - 4 Bank

Изменяем параметр Bank Interleave, устанавливаем значение 4 Bank.

Тест Значение
Sandra (Int) 1925
Sandra (Float) 1806
Quake3 (Fastest) 227,3 fps

DRAM Command Rate - 1Т

Далее изменяем параметр DRAM Command Rate. Устанавливаем значение 1Т, при этом оставляем Bank Interleave равным 4 Bank. Параметр DRAM Command Rate появился еще в чипсете KT266. С его помощью мы можем вручную изменять задержки при передачи данных между чипсетом и памятью. Возможные значения 2T, 1T (наиболее быстрым является 1Т). Отметим, что это один из тех параметров, которые существенно влияют на производительность подсистемы памяти.

Тест Значение
Sandra (Int) 1965
Sandra (Float) 1864
Quake3 (Fastest) 235,0 fps

CAS Latency - 2Т

Следующим изменяем параметр CAS Latency. Устанавливаем значение 2Т, при этом остальные настройки не трогаем (т.е. Bank Interleave=4 Bank, DRAM Command Rate=1Т). CAS Latency - это то количество тактов, через которое память реагирует на запрос чтения. Чем меньше это значение, тем лучше. Возможные варианты: 2.5Т, 2Т. Наиболее важный, с точки зрения производительности, параметр работы памяти.

Тест Значение
Sandra (Int) 2024
Sandra (Float) 1901
Quake3 (Fastest) 239,7 fps

Итак, мы имеем оптимально настроенную подсистему памяти, с точки зрения стабильности и скорости. Однако, если Вы имеете качественную память, то изменяя параметры Trp (Precharge to Active), Tras (Active to precharge) и Trcd (Active to CMD), мы можем получить еще небольшую прибавку в скорости.

Trp =2T, Tras=5T и Trcd=2T

Модуль памяти 256 Мбайт PC2100 DDR SDRAM, производства Samsung, за все время тестирования (был куплен в январе этого года) зарекомендовал себя самым положительным образом. Поэтому я смело установил следующие значения: Trp =2T, Tras=5T и Trcd=2T (значения по умолчанию 3Т, 6Т и 3Т).

Тест Значение
Sandra (Int) 2039
Sandra (Float) 1906
Quake3 (Fastest) 245,0 fps

Итак, после тонкой настройки памяти прирост производительности составил ~7.5 процентов по тесту Sandra и более 12 процентов в игре Quake3!

DDR333 (PC2700)

А теперь давайте посмотрим, что может дать установка памяти в режим DDR333 (или PC2700). Тестовый модуль памяти смог заработать на такой частоте только на следующих таймингах:

  • CAS Latency = 2Т
  • Bank Interleave = 4 Bank
  • DRAM Command Rate = 1T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T
  • Частота FSB Частота работы памяти = 133Мгерц 166 Мгерц

Тест Значение
Sandra (Int) 2052
Sandra (Float) 1932
Quake3 (Fastest) 255,1 fps

Сводная таблица

Для более удобного восприятия этой информации, я оформлю результаты в виде таблицы:

No Частота
FSB MEM
(Мгерц)
Тайминги Sandra Quake3 (fps) Прирост в Q3(%) Частота
процеcсора
(рейтинг)
1 133133 Dis, 2T, 2.5T-3T-6T-3T 1907 / 1776 218,1 - XP 1600+
2 133133 2 Bank, 2T, 2.5T-3T-6T-3T 1911 / 1791 222,9 2,2 XP 1600+
3 133133 4 Bank, 2T, 2.5T-3T-6T-3T 1925 / 1806 227,3 4,2 XP 1600+
4 133133 4 Bank, 1T, 2.5T-3T-6T-3T 1965 / 1864 235,0 7,7 XP 1600+
5 133133 4 Bank, 1T, 2T-3T-6T-3T 2024 / 1901 239,7 9,9 XP 1600+
6 133133 4 Bank, 1T, 2T-2T-5T-2T 2039 / 1906 245,0 12,3 XP 1600+
7 133166 4 Bank, 1T, 2T-3T-6T-3T 2052 / 1932 255,1 16,9 XP 1600+
8 166166 4 Bank, 1T, 2T-3T-6T-3T 2426 / 2272 307,2 40,8 XP 2100+

Выводы

Стандартными настройками являются следующие параметры:

  • CAS Latency = 2Т
  • Bank Interleave = 4 Bank
  • DRAM Command Rate = 1T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T

Поэтому конфигурации с 1 по 4 интересны только с теоретической точки зрения. Правда иногда неопытные сборщики не выставляют правильные параметры, и пользователь теряет значительную часть производительности. В другом случае, попытка сэкономить деньги на качестве оперативной памяти так же приводит к потере до 5-10% производительности. Причем это очень большие цифры; для примера разница в 5-10 fps в тесте Quake3 (Fastest), это разница между процессорами XP1600+ и XP1700+ (разница в рейтинге 100, в реальной частоте процессора - 66Mhz).

Обратите внимание на разницу в производительности 5 и 7 конфигурации, она приблизительно равна 6.5%. Это приблизительный прирост производительности при переходе на DDR333 (пример: апгрейд с KT266A на KT333).

Обращаем внимание на последнюю строчку - на показатели теста Sandra. Вот какой значительный прирост производительности можно получить, установив синхронный режим работы процессора и памяти (166 и 166 Mhz). Показатели теста Quake3 здесь беcполезны, так как процессор разогнан с 1400 до 1750 Mhz.

В этом режиме отсутствуют задержки при согласовании сигналов и, начиная с частоты 166 Мгерц, используется делитель 1/5 для частоты PCI (2/5 для AGP), что автоматически означает работу контроллера жестких дисков на стандартной частоте PСI (33 Mhz).

Естественно, весь этот материал имеет ценность только для компьютерного энтузиаста, цель которого - выжать максимум из имеющегося в наличии железа. А для большинства обычных пользователей, я думаю, вполне достаточно знать то, что можно установить все тайминги в значения, определенные производителем памяти. Для этого предназначен параметр "DRAM Timing". Возможные значения: "Manual" - параметры устанавливаются вручную, "By SPD" - устанавливаются по умолчанию (SPD = Serial Presence Detect). Конечно, производители памяти немного подстраховываются и несколько завышают тайминги работы. В результате производительность несколько меньше, чем при ручной установке параметров.

Как может заметить читатель, я изменял не все имеющиеся в нашем распоряжении параметры. А параметров работы памяти у платы Abit KX7-333 наибольшее количество (больше чем у плат Epox). Скажу следующее - все рассмотренные параметры есть практически в каждой плате среднего и высшего класса, этакий "джентльменский набор". Другие параметры (за исключением Queue Depth) - это довольно специфические параметры, которые слабо влияют на производительность, но иногда очень полезные для улучшения стабильности работы памяти разных производителей (есть даже такие тонкости) и работы в разных конфигурациях модулей памяти.

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

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



Оригинал материала: https://3dnews.ru/172103