Память бывает разная

OSzone.net » Железо » Память » Оперативная память » Память бывает разная
Автор: Сергей Андрианов
Иcточник: Мир ПК, #08/2005
Опубликована: 01.09.2005

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

Динамическая память представляет собой матрицу запоминающих элементов — конденсаторов, каждый из которых хранит один бит информации (заряжен или разряжен). Для считывания и записи служат буферы объемом в одну строку матрицы. Например, для микросхемы памяти объемом 1 Мбит размер матрицы составит 1024x1024 конденсатора, а размер буфера — 1024 бита. При обращении к ячейке памяти по адресной шине передаются последовательно номера строки и столбца, синхронизируемые сигналами RAS и CAS. Затем в буфер считывается нужная строка. При этом заряженные конденсаторы, естественно, разряжаются и теряют информацию. Если выполняемой операцией будет запись, то нужный бит в буфере (в соответствии с номером столбца) изменяется и вся строка записывается обратно, восстанавливая содержимое памяти. При чтении нужный бит выбирается из строки и подается на выход, а строка записывается без изменений. Уже из этого описания понятно, что процесс доступа к памяти содержит много шагов и требует для своего выполнения нескольких тактов внешнего сигнала. Кроме того, идеальных диэлектриков в природе не бывает, и поэтому у конденсаторов есть токи утечки и определенное время саморазряда. Поскольку их емкость очень невелика, то и время саморазряда получается весьма малым — порядка единиц или долей миллисекунды. Поэтому память нуждается в процессе регенерации, периодически восполняющем заряд конденсаторов. Собственно, сама запись из буфера строки и является операцией регенерации. Необходимо лишь позаботиться о том, чтобы регенерации подвергался весь объем памяти, а не только тот ее фрагмент, с которым происходит интенсивная работа.

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

Во многих случаях основной характеристикой установленной в компьютере оперативной памяти является ее объем. Из-за недостатка памяти производительность системы может снизиться на один-два порядка. Известно, что при работе с офисными приложениями человек способен заметить различие в скорости системы лишь тогда, когда оно составляет не менее 15—20%. Однако иногда возникает необходимость выжать из системы все возможное. Один из наиболее распространенных способов сделать это — повысить частоты работы компонентов выше номинальных, т.е. «разогнать» компьютер. Нередко производители модулей памяти явно намекают на «разгонный» потенциал своих изделий, указывая для них нестандартные значения тактовой частоты. Поэтому в настоящем тестировании исследовалась не только производительность в штатном режиме, но и возможность «разгона». Известно, что для работы на более высоких тактовых частотах приходится поднимать напряжение питания. Такая возможность, как правило, предусматривается в BIOS Setup. Кроме того, чтобы справиться с повышенным энерговыделением (выделение тепла возрастает как при увеличении тактовой частоты, так и при повышении напряжения), производители модулей памяти нередко снабжают их металлическими теплоотводами.

Чтобы в какой-то степени удостовериться в том, что ограничение по тактовой частоте обусловлено именно возможностями модулей памяти, а не других компонентов вычислительной системы, была взята системная плата, поддерживающая частоту FSB до 1066 МГц, тогда как в штатном режиме эта частота составляла только 800 МГц. Максимальная заявленная частота памяти для данной платы равнялась 667 МГц, а при проведении тестов «разгон» проводился от номинального значения 533 МГц. Кроме того, процессор, промаркированный как 3,6-ГГц Pentium 4, работал с коэффициентом умножения 14 вместо 18, что соответствует номинальной частоте 2,8 ГГц. При «разгоне», естественно, все частоты возрастали пропорционально частоте FSB. В то же время частота внешних цепей процессора (FSB) оказывалась выше номинала.

К сожалению, «текучесть» аппаратного обеспечения в тестовых лабораториях не всегда позволяет вернуться к использованной ранее конфигурации испытательного стенда. В случае «разгона» это приобретает особое значение, ведь его возможность сильно зависит от используемой системной платы. Впрочем, нередко наблюдается и просто несовместимость между определенной платой и конкретным модулем памяти. В нашем случае, например, модули Kingston отказались работать при номинальном напряжении — для обеспечения нормальной работы его пришлось несколько увеличить. Кроме того, хотя все узлы системной платы и функционировали без выхода за пределы номинального диапазона частот, оказалось, что результаты «разгона» модулей Corsair заметно отличаются от полученных на другой плате. Дело в том, что ширина синхронизирующих импульсов, а также фазовые соотношения между ними могут существенно зависеть от схемотехники применяемого синтезатора частот, НМС и разводки платы. Есть также подозрение, что модули, рассчитанные на достижение наивысшей производительности, более «капризны» (правда, это наблюдение пока нельзя считать прошедшим длительную статистическую проверку). Значит, выше вероятность того, что они могут быть несовместимы с той или иной системной платой.

При проведении тестов тайминги памяти выставлялись по SPD (параметры, «зашитые» в ПЗУ модуля памяти), однако для одного из модулей величўины таймингов, показываемые программой CPU-Z, не совпали со значениями, рекомендованными SPD, поэтому в таблице приведены оба показателя для всех модулей.

Модули памяти Kingston были заявлены как работающие на частоте 667 МГц. Но с целью сопоставимости результатов они были использованы в основной массе тестов при частоте 553 МГц. К тому же специально для них была проведена серия испытаний при номинальной частоте 667 МГц.


Как мы тестировали

Тестовая платформа была выполнена на базе 3,6-ГГц процессора Intel Pentium 4 (Prescott, работал с коэффициентом умножения 14), 1024-Мбайт ОЗУ типа DDR2 SDRAM (два модуля объемом по 512 Мбайт), системной платы Elitegroup PF88, видеоплаты Albatron GeForce PCX PC5750, 200-Гбайт жесткого диска Western Digital WD2000JD-00HBB0 SATA-150, CD-ROM-дисковода Lite On LTN483L 48x и 400-Вт блока питания VT-420LD. Операционная система — Windows XP SP1.

Одна из основных задач тестирования — установить «разгонный» потенциал модулей памяти.

Для этого сначала измерялась производительность с помощью набора тестовых утилит в стандартном режиме. Затем с использованием утилиты BIOS Setup последовательно повышалась частота FSB, после чего для уменьшения риска повреждения данных на жестком диске из-за неустойчивой работы системы проводились загрузка с дискеты и запуск CheckIt 7.0 для DOS. После прохождения теста памяти загружалась Windows и последовательно проводились тесты 3DMark03, 3DMark05, SiSoft Sandra 2004, aCPURAMtest 2.6. Потом запускалась диагностическая утилита CPU-Z. Если какой-либо тест завершался аварийно (компьютер зависал, перезагружался и т.п.), понижалась частота. Таким образом, с точностью до 2 МГц определялась наивысшая частота, при которой может работать система. Результаты измерения производительности для этой частоты заносились в таблицу, после чего напряжение на модулях памяти повышалось и проводился следующий цикл измерений.

Модель BIOS Setup CPU-Z 3DMark 3 3DMark 5 SiSoft Sandra, скорость памяти aCPURAMtest
Превышение напряжения, мВ Частота шины, МГц Частота процес сора, МГц Частота шины, МГц Производительность процессора Int SSE2 Float SSE2 Частота процес сора, МГц Быстрая пе ресылка (SSE), Мбайт/с Нахождение кратчайшего пути, мс Нахождение простых чисел, мс
Corsair 0 200 2793,8 199,6 4915 786 3884 3892 2759 1314,2 1,451 1226,1
Corsair 0 212 2956,6 211,2 4984 790 4512 4505 2954,5 1615,1 1,13 983,4
Corsair +50 218 3044,6 217,5 5017 788 4609 4604 3048,6 1659,1 1,094 953,9
Corsair +150 226 3157,2 225,5 5042 789 4773 4777 3154,9 1718,1 1,057 921,5
Kingmax 0 200 2793,8 199,6 4939 786 4201 4190 2797,3 1500,6 1,193 1062,7
Kingmax 0 218 3044,4 217,5 5002 785 4518 4514 3048,1 1812,4 1,092 980,1
Kingmax +50 226 3157,1 225,5 5037 791 4697 4687 3161,1 1678,1 1,055 945,6
Kingmax +150 234 3269,7 233,6 5079 790 4865 4866 3267,6 1733,8 1,019 914,7
Kingston (533 МГц) +50 200 2793,8 199,6 4914 785 3990 3982 2765,8 1419,1 1,447 1101,3
Kingston +50 208 2906,6 207,6 4972 788 4142 4138 2904,5 1489,7 1,149 1047,2
Kingston +150 218 3044,4 217,5 4999 788 4333 4326 3042,2 1545,9 1,095 999,1
Kingston (667 МГц) +100 200 2793,8 199,6 4920 786 4214 4210 2797,3 1484,1 1,193 1061,1

Тайминги и скрытое время доступа (такты процессора) памяти по данным программы CPU-Z

Параметр Corsair Kingmax Kingston 533 МГц Kingston 667 МГц
SPD Memory SPD Memory SPD Memory SPD Memory
CAS# Latency 3 3 4 4 4 4 5 5
RAS# toCAS# 3 4 4 4 4 4 5 5
RAS# Precharge 3 4 4 4 4 4 5 5
Tras# 8 12 12 12 12 12 15 15
Скрытое время доступа 383—389 396—418 436—444 396—404

Ссылка:
http://www.oszone.net/3327/memory