Source: Sharkyextreme
Date: 09/03/2001
Большинство пользователей в основном уделяет свое внимание таким
железкам, как процессоры, видеокарты, etc, порой совершенно позабыв о простой памяти, что не есть правильно. А между тем очень часто именно пропускная способность памяти является самым узким местом - за примерами далеко ходить не надо, достаточно вспомнить ситуацию с DDR памятью современных видеокарт и системной памятью.
В данной статье рассказывается об основных параметрах системной памяти, ее тайминге, а также несколько рекомендаций по настройке вашей памяти на оптимальную производительность.
Каждый модуль SRDAM имеет некоторые характеристики, основными из которых является его тайминги и частота. С частотой все ясно - она измеряется в MHz, маркировка модулей PC100 и PC133 означает частоту 100 и 133MHz соответственно. С таймингами несколько сложнее - здесь есть несколько параметров - CAS латентность, задержка RAS-to-CAS, а также RAS precharge. Эти три параметра маркируются 3 цифрами в виде X-X-X, например, 2-2-2 или 3-3-3.
Не углубляясь в технические подробности, скажем только то, что CAS (Column Access Strobe), как и RAS (Row Access Strobe) precharge, а также задержка RAS-to-CAS определяют быстродействие памяти. Чем выше частота памяти, тем сложнее достичь низких таймингов, но низкие значения этих параметров означают большую потенциальную ее производительность.
Каждый модуль памяти также имеет скоростной рейтинг, измеряющийся в наносекундах (ns). Минимальная скорость для памяти PC100 - 10 ns, в то время как в настоящее время распространены 8 ns модули. Модули PC133, как правило, имеют скорость 7-7.5 ns, у high-end этот параметр равен 6 ns. Данный скоростной параметр можно узнать либо при физическом изучении маркировки модуля памяти (например, маркировка -10, -8, -7.5 etc), либо при помощи специальных программ.
Есть несколько различных вариантов маркировки модулей памяти, на фотографии ниже приведена одна из самых распространенных.
Также существуют несколько программ, с помощью которых можно получить информацию о вашей памяти - например, SiSoft Sandra.
Необходимо помнить, скоростные характеристики зависят от таймингов, но далеко не во всех случаях. Например, модули PC133 могут быть маркированы как 3-2-2 и 3-3-3, хотя это оба 7.5 ns модуля. В то же время high-end PC133 6 ns память спокойно работала при таймингах 3-3-3 на частоте выше 145MHz, но категорически отказывалась работать при 2-2-2 на частоте даже ниже 133MHz.
На системных платах с любым чипсетом есть возможность изменять значения CAS и RAS таймингов, но вот изменение частоты памяти зависит от используемого чипсета. Так, на платах с чипсетом i440BX частота памяти должна быть эквивалентна частоте системной шины.
Более новые чипсеты, такие как VIA KX133, KT133 и Apollo Pro133/A поддерживают асинхронные частоты памяти и системной шины. Это значит, что память PC133 будет работать при частоте FSB 100MHz и наоборот. Подобная возможность очень удобна, но некоторые относительно новые чипсеты, скажем, i815 и i815E ее не имеют - скорости PC133 на них можно достичь только в том случае, если используется частота системной шины 133MHz.
Все тайминги памяти можно изменить в BIOS. В большинстве BIOS'ов эти опции можно найти в секции Advanced Chipset Features. Данные параметры могут иметь значение 2 или 3. Если все они имеют значения 2 (2-2-2), то ваша память уже настроена на самую высокую производительность. Если же они имеют значения 3-2-2 или 3-3-3, то здесь уже можно поэкспериментировать - теперь все зависит от рейтинга памяти и частоты FSB.
В отличие от разгона процессора или видеокарты, разгон памяти связан с некоторым физическим риском для вашей системы, некоторых случаях просто может рухнуть софт. Самое неприятное здесь - это то, что если выставить частоту памяти или ее тайминги на слишком высокие значения, система может не загрузиться. Но все-таки это происходит достаточно редко, даже если используются 10 ns PC100 модули при установленных таймингах 2-2-2, система должна запускаться, правда, она сразу же повесится при загрузке ОС.
Часто бывает так, что поставщики систем не оптимизируют настройки памяти, случаются и банальные ошибки при ее настройке. Поэтому если вы лишний раз залезете в BIOS и проверите эти параметры, хуже вам от этого не станет, не правда ли? Если же настройки действительно не соответствуют спецификациям вашей памяти, изменив их на более высокие можно добиться увеличения производительности системы.
Даже если настройки в порядке, то в случае с брэндовой памятью (как и с брэндовой видеокартой, etc), у нее наверняка есть определенный запас прочности, позволяющий ей работать при более низких таймингах. К тому же, может иметь
место неверная маркировка - бывает так, что два модуля с CAS латентностью 2.1 и 2.9 маркируются, как CAS 3.
Как и в случае разгона процессора или видеокарты, тайминги памяти нужно изменять постепенно и не все сразу, некоторое время тестируя систему после каждого изменения. Самый важный параметр и одновременно самая большая проблема - CAS латентность. При твикинге памяти рекомендуется сначала уменьшить задержку RAS-to-CAS и RAS precharge одновременно и проверить, загружается ли ОС, стабильно ли работает система. Только потом можно уменьшить латентность CAS с 3 до 2 и быть готовым к возврату к значению 2, если эксперимент не удастся.
А вот увеличить частоту памяти с 100 до 133MHz, в отличие от изменения таймингов памяти - это уже нетривиальная задача. В большинстве случаев память PC100 не способна достичь частоты 133MHz даже при таймингах 3-3-3. Это связано с более высоким временем доступа, поэтому при установке частоты памяти 133MHz тайминги RAS и CAS становятся равными 4 или 5 - эти параметры выходят за пределы допустимых, да и производительность такой памяти была бы низкой. Некоторые модули PC100 все-таки способны функционировать на частоте 133MHz, но шансы на это очень малы.
Если вы используете память PC133, убедитесь в корректности ее настроек. Системные платы на базе i815 и i815E по умолчанию запускают системную память на частоте 100MHz, даже если выбрана Auto speed и используется процессор с 133MHz системной шиной. И помните - на плате с чипсетом i815 функционирование памяти на частоте 133MHz возможно только при использовании процессора с этой же частотой FSB - например, Pentium III B или EB.
Платы на чипсетах VIA, таких, как Apollo Pro 133/A, KX133, KT133 и других имеют поддержку асинхронных частот памяти и системной шины, поэтому возможно использование памяти PC133 и процессора с частотой FSB 100MHz. Данные настройки зависят от производителя BIOS, но они есть у всех плат.
После изменения некоторых настроек самое время запустить несколько бенчмарков. В SiSoft Sandra нужно запустить тесты по измерению пропускной способности памяти и сравнить полученный результат с результатом при предыдущих настройках. Если оба результата одинаковы, еще раз проверить настройки в BIOS, и, в случае с системной платой на i815/i815E, убедиться, что при используемом процессоре и настройках BIOS возможна поддержка памяти с выбранной частотой.
После бенчмаркинга в SiSoft Sandra можно приступить к тестам на стабильность. Здесь лучшим выбором будет, конечно же, Quake III Arena. С помощью этой игры можно быстро выяснить проблемы - например, некоторые модули PC100 и PC133 с таймингами 2-2-2 работают в Windows стабильно, но терпят крах после нескольких Quake3 сессий.
Еще одним источником проблем может быть разогнанный процессор. Например, используется нестандартная частота FSB, отличная от 100 или 133MHz - скажем, 120 или 140MHz. Здесь также нужно поэкспериментировать и выяснить, при каких таймингах ваша память способна работать на нестандартной частоте.
Еще один способ решить проблему - немного увеличить VIO вольтаж чипсета. Если в Windows память работает стабильно, но отказывается работать в играх или бенчмарках, есть смысл увеличить VIO вольтаж на 0.1V. Здесь главное не увлекаться - помните, что увеличение вольтажа связано с риском повредить системную плату или другие компоненты.
Тестирование
Тестовый стенд:
- Процессор: Pentium III 800 (100 и 133MHz FSB)
- Системная плата: MSI 815E Pro
- Память: 128MB PC133 SDRAM
- Жесткий диск: Seagate Barracuda ATA 28GB 7200RPM ATA66
- Видеокарта: LeadTek GeForce2 GTS
- ОС: Windows 98SE
Учтите, что производительность очень сильно зависит от используемого процессора и чипсета. Производительность от уменьшения таймингов памяти увеличится на любом ПК, но это увеличение очень сильно варьируется между разными системами. Лучше всего произвести подобное тестирование на своей собственной системе при различных таймингах и частотах.
В качестве тестов выбраны SiSoft Sandra и Quake III Arena. В Sandra множество интересных тестов, но выбраны только тесты по измерению пропускной способности памяти. Как видно, память PC100 даже при таймингах 2-2-2 отстает даже от 3-3-3 PC133.
Отлично видно как низкие тайминги памяти увеличивают ее пропускную способность.
В Quake3 подобная ситуация. В случае с лучшими настройками памяти PC133 фреймрейт в низком разрешении на 10 fps выше, чем при настройках 3-3-3. В высоком разрешении самым узким местом становится филлрейт видеокарты и пропускная способность ее памяти, так что при любых настройках системной памяти производительность одинаковая.
Выводы
Часто можно услышать следующий вопрос: что лучше - память PC100 с CAS2 или PC133 с CAS3? Думаем, после проведенного тестирования все стало ясно - благодаря частоте 133MHz увеличенная пропускная способность компенсирует высокую латентность.
Еще один важный аспект - даже если ваша память не способна работать при CAS2, не пренебрегайте задержкой RAS-to-CAS и RAS precharge. Из проведенного тестирования видно, что изменив эти параметры на 2 (а ваша память скорее всего будет работать при этих таймингах), также можно получить некоторое увеличение производительности.
Из всего вышесказанного не следует, что при апгрейде системы нужно выкинуть свою память PC100 и приобрести довольно дорогую CAS2 PC133. Значительного увеличения производительности это не даст. Какую же SDRAM можно назвать лучшей в соотношении цена/производительность? Скорее всего, это 3-2-2 PC133. Цены на эту память невысокие, к тому же в некоторых случаях она будет способна работать при 2-2-2.