Об оперативной памяти компьютера
В этом разделе рассматривается память общего назначения, где ПК хранят используемые в данный момент программы и данные — канал, который поставляет данные процессору и получает от него результаты. Память общего назначения, называемая «памятью для чтения и записи» или «оперативной памятью» (RAM), должна поддерживать как чтение, так и запись. В современных ПК используются два типа оперативной памяти:
Динамическая память (DRAM)
«Динамическая память» (DRAM) хранит данные лишь малую долю секунды, прежде чем они теряются. Чтобы сохранить данные, система должна постоянно «обновлять» DRAM, что снижает производительность и ограничивает скорость. Типичная DRAM обеспечивает время доступа 60 нс (наносекунд), при этом она недорога и потребляет относительно мало энергии.
Статическая память (SRAM)
«Статическая память» (SRAM) автоматически сохраняет свое содержимое, пока подается питание, без необходимости обновления. SRAM обеспечивает время доступа на порядок быстрее, чем DRAM, но она дорога и энергоемка.
В ПК используется многоуровневая архитектура памяти, которая использует преимущества этих характеристик:
Основная память
Основная часть памяти ПК использует DRAM (в современных системах используется вариант под названием «SDRAM», описанный в следующем разделе) и называется «основной памятью». Она имеет большой объем, как правило, от 256 МБ до 1 ГБ и более, но работает слишком медленно, чтобы не отставать от современных процессоров. В основной памяти ЦП хранит программы и данные, которые скоро потребуются. Основная память функционирует как буфер между ЦП и диском.
Кэш-память
«Кэш-память» — это небольшой объем быстрой SRAM, которая буферизирует доступ между ЦП и основной памятью.
Современные ПК имеют два уровня кэш-памяти:
Первичная кэш-память
«Первичная кэш-память», также называемая «кэш-памятью 1-го уровня» или «L1-кэшем», обычно представляет собой очень быструю память объемом от 16 до 128 КБ, расположенную на одном кристалле с самим ЦП. Размер и эффективность L1-кэша являются основными факторами производительности ЦП. Объем и тип L1-кэша определяются используемым ЦП и не подлежат обновлению.
Вторичная кэш-память
L1-кэша недостаточно, чтобы устранить разрыв в скорости между процессорами и основной памятью. «Вторичная кэш-память», также называемая «кэш-памятью 2-го уровня» или «L2-кэшем», преодолевает этот разрыв благодаря разумному компромиссу между стоимостью и производительностью. L2-кэш является частью корпуса ЦП (или самого подложки ЦП) на всех современных процессорах, включая Intel Pentium 4 и Celeron, а также AMD Athlon 64 и Sempron. Современные процессоры имеют объем L2-кэш-памяти от 128 КБ до 2 МБ.
ИСПОЛЬЗУЙТЕ КЭШ И УСКОРЯЙТЕСЬ
Объем кэш-памяти на процессоре может оказать драматическое влияние на производительность, особенно если вы работаете с небольшими наборами данных. Например, когда мы тестировали клиент SETI@Home (http://setiathome.ssl.berkeley.edu/) на двух почти идентичных процессорах, один из которых имел 512 КБ кэша L2, а другой — 1 МБ, второй процессор завершал рабочие единицы менее чем за половину времени, требуемого первому. Это было верно, потому что вся рабочая единица помещалась в 1 МБ кэша L2, но не помещалась в 512 КБ. При запуске аналогичного приложения распределенных вычислений, использующего наборы данных, слишком большие, чтобы поместиться в 1 МБ кэша L2, процессор с большим кэшем L2 был лишь незначительно быстрее. Если вы выбираете между двумя похожими процессорами, всегда выбирайте тот, у которого больше кэш L2.
Типы памяти
В современных системах основная память используется одного из следующих типов:
Синхронная DRAM (SDRAM)
«Синхронная DRAM», также называемая «SDRAM», начала поставляться в 1996 году и широко использовалась в ПК до 2001 года. В отличие от старых и ныне устаревших асинхронных форм памяти, SDRAM имеет общую тактовую частоту с ЦП. ЦП и память связаны друг с другом, что позволяет ЦП передавать данные в память и из нее тогда, когда это необходимо, вместо того чтобы ждать произвольного временного окна. Скорость SDRAM указывается в МГц, а не в наносекундах, как было в ранних формах памяти. Синхронная DRAM принимает одну из следующих форм:
JEDEC SDRAM
«JEDEC SDRAM» или «PC66 SDRAM» называется так, чтобы отличать её от более поздних «PC100 SDRAM» и «PC133 SDRAM».
PC100 SDRAM
«PC100 SDRAM» рассчитана на использование с процессорами Pentium II и Pentium III, использующими системную шину (FSB) 100 МГц.
PC133 SDRAM
«PC133 SDRAM» рассчитана на использование с FSB 133 МГц. Обратите внимание, что нельзя с уверенностью полагать, что память PC133 можно использовать для обновления системы, в которой установлена память PC66 или PC100. Некоторые системы, особенно те, которые основаны на чипсетах Intel 440BX и 810-й серии, требуют память PC100 и не будут должным образом работать с установленной памятью PC133.
В целом, хотя модули SDRAM PC66, PC100 и PC133 всё ещё доступны (хотя и в ограниченном количестве), любая система, использующая SDRAM, является плохим кандидатом для обновления. Самым новым системам SDRAM уже более пяти лет, и они достигают конца срока службы. Самые быстрые системы SDRAM, такие как модели Pentium III с частотой 1+ ГГц, всё ещё достаточно быстры, чтобы выполнять вспомогательные задачи, но очень высокая стоимость за мегабайт SDRAM делает их обновление экономически нецелесообразным, если только не использовать SDRAM из других старых систем.
DDR-SDRAM
По сравнению со стандартной SDRAM, «Double Data Rate SDRAM (DDR-SDRAM)» удваивает объем данных, передаваемых за один тактовый цикл, и, таким образом, эффективно удваивает пиковую пропускную способность памяти. DDR-SDRAM — это эволюционное улучшение стандартной SDRAM, которую теперь иногда называют «Single Data Rate SDRAM» или «SDR-SDRAM» для отличия. Поскольку DDR-SDRAM по сути стоит столько же в производстве, сколько и SDR-SDRAM, она быстро вытеснила SDR-SDRAM.
Чипы, используемые для производства модуля памяти DDR-SDRAM, называемого DIMM (Dual In-line Memory Module), называют по их рабочей скорости. Например, чипы 100 МГц работают с удвоенной частотой до 200 МГц, поэтому называются чипами DDR200. Аналогично, чипы, работающие на 133 МГц, называются чипами DDR266, работающие на 166 МГц — DDR333, а те, которые работают на 200 МГц — DDR400.
В отличие от модулей SDR-SDRAM DIMM, которые обозначаются по скорости их чипов, модули DDR-SDRAM DIMM обозначаются по их пропускной способности.
Их шина данных имеет ширину 64 бита (8 байт). Например, модуль DDR-SDRAM DIMM, использующий чипы DDR200, передает 8 байт 200 миллионов раз в секунду, что дает общую пропускную способность 1600 миллионов байт/секунду, и называется модулем PC1600 DIMM. Аналогично, модули DDR-SDRAM DIMM, использующие чипы DDR266, маркируются как PC2100, использующие чипы DDR333 — как PC2700, а использующие чипы DDR400 — как PC3200.
Падение цен на модули DDR-SDRAM PC3200 быстро сделало устаревшими более медленные формы DDR-SDRAM, хотя модули PC2700 всё ещё встречаются в ограниченном количестве. Ограниченная доступность PC2100 и более медленных форм DDR-SDRAM не является проблемой для систем, использующих эти медленные варианты, поскольку память PC3200 обратно совместима с ними.
Быстрее — не обязательно лучше
Высокопроизводительные модули памяти, предназначенные для геймеров, оверклокеров и других энтузиастов, доступны с рейтингами PC3500, PC4000, PC4200 и выше. Эти модули по премиальной цене не дают преимуществ, если только вы не разгоняете систему выше её номинальной скорости.
НЕ СМЕШИВАЙТЕ
Смешивание быстрых модулей с медленными приводит к тому, что быстрая память начинает работать на скорости самого медленного установленного модуля. Кроме того, некоторые материнские платы плохо работают с памятью разной скорости. Если вы обновляете систему, в которой есть ограниченный объем медленной DDR-SDRAM, а процессор может использовать более высокую скорость DDR-SDRAM PC3200, часто имеет смысл заменить медленные модули, а не просто добавить модули PC3200.
Любая система, использующая DDR-SDRAM, является хорошим кандидатом для обновления. Если на модуле нет маркировки, вы можете определить скорость и другие характеристики DDR-SDRAM DIMM, проверив номер детали на модуле на веб-сайте производителя. Модули DDR-SDRAM DIMM используют 184 контакта, их можно отличить от 168-контактных SDR-SDRAM и 240-контактных модулей DDR2-SDRAM по количеству контактов и положению одного ключа (выреза). На Рисунке 6-2 показан модуль DDR-SDRAM DIMM.
Рисунок 6-2: Модуль DDR-SDRAM DIMM
DDR2 SDRAM
К началу 2003 года оригинальная технология DDR-SDRAM быстро приближалась к своим пределам. По мере того как AMD и Intel переходили на более высокие скорости FSB, DDR-SDRAM с трудом удавалось поспевать за ними. Массовая DDR-SDRAM достигает максимума на PC3200. Двухканальные чипсеты DDR (которые объединяют пропускную способность парных модулей памяти), использующие память PC3200, ограничивают пиковую пропускную способность до 6400 МБ/с. Это соответствует требованиям к пропускной способности процессора с 64-битной (8-байтовой) шиной памяти, работающего с FSB 800 МГц, например, моделей Pentium 4, но по мере появления новых процессоров даже двухканальная DDR-SDRAM не сможет справляться с увеличением пропускной способности процессоров.
Долгосрочным решением является «DDR2 SDRAM». DDR2 включает ряд эволюционных улучшений технологии DDR, включая увеличенную пропускную способность, пониженное напряжение (1,8 В по сравнению с 2,5 В у DDR), пониженное энергопотребление и улучшенный корпус. Так же, как DDR-SDRAM удвоила пропускную способность по сравнению с SDR-SDRAM при работе на той же тактовой частоте, DDR2-SDRAM удваивает пропускную способность по сравнению с DDR-SDRAM за счет удвоения скорости электрического интерфейса. Модули DDR2 DIMM используют новый 240-контактный разъем, который несовместим с 184-контактным разъемом DDR-SDRAM и более ранними. В Таблице 6-1 перечислены важные характеристики DDR2-SDRAM, с PC3200 (DDR400) DDR-SDRAM для сравнения.
Таблица 6-1: Характеристики DDR2
Хотя Intel активно продвигала DDR2 с момента её внедрения, первоначальное принятие было медленным по двум причинам. Во-первых, память DDR2 изначально продавалась с очень большой наценкой по сравнению с DDR, иногда до 200–300%. К концу 2005 года этот разрыв сократился до 15–20%, что сделало DDR2 более разумным выбором. Во-вторых, хотя DDR2 предлагает гораздо более высокую пропускную способность, чем DDR, она также страдает от гораздо более высокой «задержки». По сути, это означает, что хотя DDR2 может передавать данные на более высокой скорости, требуется больше времени, чтобы начать их передачу. Для приложений, которые в основном используют последовательный доступ к памяти, таких как редактирование видео, преимущество DDR2 в пропускной способности дает заметно более высокую производительность. Для приложений, которые обращаются к памяти случайным образом, включая многие программы личной продуктивности, преимущество в задержке дает DDR преимущество. Модули DDR2-SDRAM DIMM используют 240 контактов, их можно отличить от 168-контактных SDR-SDRAM и 184-контактных модулей DDR-SDRAM по количеству контактов и положению ключа.
Rambus RDRAM
«Rambus RDRAM» — это проприетарный стандарт оперативной памяти, разработанный совместно Intel и Rambus. Rambus RDRAM упаковывается в модули, называемые «RIMM» (это торговое наименование, а не аббревиатура).
Существует три типа памяти RDRAM: «Base Rambus», «Concurrent Rambus» и «Direct Rambus». Первые два устарели и использовались только в таких устройствах, как игровые консоли. Вся память RDRAM, используемая в ПК, — это память Direct Rambus. RDRAM выпускалась с четырьмя скоростями: PC600, PC700, PC800 и PC1066, хотя доступны только PC800 и PC1066. Как и в случае с DDR-SDRAM, модули RDRAM называются в соответствии с их пропускной способностью, но с разницей. RDRAM использует 16-битную или 18-битную шину данных (против 64-битной у SDRAM) для передачи двух байт за раз, в отличие от 8-байтовой пропускной способности DDR-SDRAM. Соответственно, RDRAM PC800 имеет пропускную способность всего 1,6 ГБ/с, а PC1066 — 2,133 ГБ/с, что намного ниже, чем у DDR-SDRAM, не говоря уже о DDR2-SDRAM.
ДВА МОДУЛЯ В ОДНОМ
Модули RIMM RDRAM изначально поставлялись как 16-битные или 18-битные детали. В материнских платах с двухканальной RDRAM эти модули должны были устанавливаться парами, по одному на канал. Доступные в настоящее время модули RIMM RDRAM PC1066 32/36-бит — это, по сути, два объединенных в одном корпусе модуля RIMM 16- или 18-бит, и их можно устанавливать по одному в системы с двухканальной RDRAM.
RDRAM также страдает от серьезной задержки, и эта задержка увеличивается по мере увеличения количества устройств RDRAM. Хотя RDRAM предлагала потенциально более высокую общую производительность на момент своего внедрения, более быстрая и гораздо менее дорогая DDR-SDRAM быстро сделала RDRAM устаревшей для использования в настольных системах. Системы на базе RDRAM можно обновить, но с трудом, поэтому тщательно взвесьте возраст системы и стоимость дополнительной памяти RDRAM по сравнению со стоимостью замены материнской платы и переходом на память DDR-SDRAM или DDR2-SDRAM.
RAMBUS БОЛЬШЕ НЕ ДЛЯ ПК
Rambus представила продолжение RDRAM под названием «XDR DRAM», которое конкурентоспособно по производительности (если не по цене) с DDR-SDRAM. XDR DRAM используется в игровой консоли Sony PlayStation 3, но ни один существующий чипсет для ПК не поддерживает XDR DRAM. Все ПК, созданные с памятью Rambus, сейчас близки к концу срока своей службы.
Вы можете определить тип памяти, скорее всего присутствующий в системе, зная её возраст. На Рисунке 6-3 показана временная шкала типов памяти, которые устанавливались в новые системы за последние 10 лет.
Рисунок 6-3: Типы памяти, используемые в новых системах по годам
По состоянию на конец 2005 года ситуация с памятью для ПК кажется предсказуемой на ближайшие пару лет. Память DDR-SDRAM PC3200 продолжит использоваться в бюджетных системах и останется широко доступной для тех, кто обновляет старые системы. DDR2-SDRAM наконец закрепилась в 2005 году для систем на базе Intel, и по мере того, как AMD будет внедрять DDR2-совместимые процессоры в течение 2006 года, DDR2 станет основной технологией памяти, постепенно заменяя DDR-SDRAM.
0 Комментариев