- Про ранги и виртуализацию в RAM
- Старые песни про новые типы
- Частота и режим работы
- Ранги для памяти
- Немного про скучные аббревиатуры таймингов
- RAID для оперативной памяти
- Многопроцессорные системы и память
- Итого
- Ранги оперативной памяти: что это такое, как узнать и какая лучше
- Что такое ранг оперативной памяти?
- Отличие одноранговой памяти от двухранговой на практике
- Какой ранг памяти лучше?
- Как узнать ранг оперативной памяти по маркировке?
Про ранги и виртуализацию в RAM
В продолжение рубрики «конспект админа» хотелось бы разобраться в нюансах технологий ОЗУ современного железа: в регистровой памяти, рангах, банках памяти и прочем. Подробнее коснемся надежности хранения данных в памяти и тех технологий, которые несчетное число раз на дню избавляют администраторов от печалей BSOD.
Старые песни про новые типы
Сегодня на рынке представлены, в основном, модули с памятью DDR SDRAM: DDR2, DDR3, DDR4. Разные поколения отличаются между собой рядом характеристик – в целом, каждое следующее поколение «быстрее, выше, сильнее», а для любознательных вот табличка:
Для подбора правильной памяти больший интерес представляют сами модули:
RDIMM — регистровая (буферизованная) память. Удобна для установки большого объема оперативной памяти по сравнению с небуферизованными модулями. Из минусов – более низкая производительность;
UDIMM (unregistered DRAM) — нерегистровая или небуферизованная память — это оперативная память, которая не содержит никаких буферов или регистров;
LRDIMM — эти модули обеспечивают более высокие скорости при большей емкости по сравнению с двухранговыми или четырехранговыми модулями RDIMM, за счёт использования дополнительных микросхем буфера памяти;
HDIMM (HyperCloud DIMM, HCDIMM) — модули с виртуальными рангами, которые имеют большую плотность и обеспечивают более высокую скорость работы. Например, 4 физических ранга в таких модулях могут быть представлены для контроллера как 2 виртуальных;
Попытка одновременно использовать эти типы может вызвать самые разные печальные последствия, вплоть до порчи материнской платы или самой памяти. Но возможно использование одного типа модулей с разными характеристиками, так как они обратно совместимы по тактовой частоте. Правда, итоговая частота работы подсистемы памяти будет ограничена возможностями самого медленного модуля или контроллера памяти.
Для всех типов памяти SDRAM есть общий набор базовых характеристик, влияющий на объем и производительность:
частота и режим работы;
Конечно, отличий на самом деле больше, но для сборки правильно работающей системы можно ограничиться этими.
Частота и режим работы
Понятно, что чем выше частота — тем выше общая производительность памяти. Но память все равно не будет работать быстрее, чем ей позволяет контроллер на материнской плате. Кроме того, все современные модули умеют работать в в многоканальном режиме, который увеличивает общую производительность до четырех раз.
Режимы работы можно условно разделить на четыре группы:
Single Mode — одноканальный или ассиметричный. Включается, когда в системе установлен только один модуль памяти или все модули отличаются друг от друга. Фактически, означает отсутствие многоканального доступа;
Dual Mode — двухканальный или симметричный. Слоты памяти группируются по каналам, в каждом из которых устанавливается одинаковый объем памяти. Это позволяет увеличить скорость работы на 5-10 % в играх, и до 70 % в тяжелых графических приложениях. Модули памяти необходимо устанавливать парами на разные каналы. Производители материнских плат обычно выделяют парные слоты одним цветом;
Triple Mode — трехканальный режим работы. Модули устанавливаются группами по три штуки — на каждый из трех каналов. Аналогично работают и последующие режимы: четырехканальные (quad-channel), восьмиканальные (8-channel memory) и т.п.
Для максимального быстродействия лучше устанавливать одинаковые модули с максимально возможной для системы частотой. При этом используйте установку парами или группами — в зависимости от доступного многоканального режима работы.
Ранги для памяти
Ранг (rank) — область памяти из нескольких чипов памяти в 64 бита (72 бита при наличии ECC, о чем поговорим позже). В зависимости от конструкции модуль может содержать один, два или четыре ранга.
Узнать этот параметр можно из маркировки на модуле памяти. Например уKingston число рангов легко вычислить по одной из трех букв в середине маркировки: S (Single — одногоранговая), D (Dual — двухранговая), Q (Quad — четырехранговая).
Пример полной расшифровки маркировки на модулях Kingston:
Серверные материнские платы ограничены суммарным числом рангов памяти, с которыми могут работать. Например, если максимально может быть установлено восемь рангов при уже установленных четырех двухранговых модулях, то в свободные слоты память добавить не получится.
Перед покупкой модулей есть смысл уточнить, какие типы памяти поддерживает процессор сервера. Например, Xeon E5/E5 v2 поддерживают одно-, двух- и четырехранговые регистровые модули DIMM (RDIMM), LRDIMM и не буферизированные ECC DIMM (ECC UDIMM) DDR3. А процессоры Xeon E5 v3 поддерживают одно- и двухранговые регистровые модули DIMM, а также LRDIMM DDR4.
Немного про скучные аббревиатуры таймингов
Тайминги или латентность памяти (CAS Latency, CL) — величина задержки в тактах от поступления команды до ее исполнения. Числа таймингов указывают параметры следующих операций:
CL (CAS Latency) – время, которое проходит между запросом процессора некоторых данных из памяти и моментом выдачи этих данных памятью;
tRCD (задержка от RAS до CAS) – время, которое должно пройти с момента обращения к строке матрицы (RAS) до обращения к столбцу матрицы (CAS) с нужными данными;
tRP (RAS Precharge) – интервал от закрытия доступа к одной строке матрицы, и до начала доступа к другой;
tRAS – пауза для возврата памяти в состояние ожидания следующего запроса;
Разумеется, чем меньше тайминги – тем лучше для скорости. Но за низкую латентность придется заплатить тактовой частотой: чем ниже тайминги, тем меньше допустимая для памяти тактовая частота. Поэтому правильным выбором будет «золотая середина».
Существуют и специальные более дорогие модули с пометкой «Low Latency», которые могут работать на более высокой частоте при низких таймингах. При расширении памяти желательно подбирать модули с таймингами, аналогичными уже установленным.
RAID для оперативной памяти
Ошибки при хранении данных в оперативной памяти неизбежны. Они классифицируются как аппаратные отказы и нерегулярные ошибки (сбои). Память с контролем четности способна обнаружить ошибку, но не способна ее исправить.
Для коррекции нерегулярных ошибок применяется ECC-память, которая содержит дополнительную микросхему для обнаружения и исправления ошибок в отдельных битах.
Метод коррекции ошибок работает следующим образом:
При записи 64 бит данных в ячейку памяти происходит подсчет контрольной суммы, составляющей 8 бит.
Когда процессор считывает данные, то выполняется расчет контрольной суммы полученных данных и сравнение с исходным значением. Если суммы не совпадают – это ошибка.
Технология Advanced ECC способна исправлять многобитовые ошибки в одной микросхеме, и с ней возможно восстановление данных даже при отказе всего модуля DRAM.
Исправление ошибок нужно отдельно включить в BIOS
Большинство серверных модулей памяти являются регистровыми (буферизованными) – они содержат регистры контроля передачи данных.
Регистры также позволяют устанавливать большие объемы памяти, но из-за них образуются дополнительные задержки в работе. Дело в том, что каждое чтение и запись буферизуются в регистре на один такт, прежде чем попадут с шины памяти в чип DRAM, поэтому регистровая память оказывается медленнее не регистровой на один такт.
Все регистровые модули и память с полной буферизацией также поддерживают ECC, а вот обратное не всегда справедливо. Из соображений надежности для сервера лучше использовать регистровую память.
Многопроцессорные системы и память
Для правильной и быстрой работы нескольких процессоров, нужно каждому из них выделить свой банк памяти для доступа «напрямую». Об организации этих банков в конкретном сервере лучше почитать в документации, но общее правило такое: память распределяем между банками поровну и в каждый ставим модули одного типа.
Если пришлось поставить в сервер модули с меньшей частотой, чем требуется материнской плате – нужно включить в BIOS дополнительные циклы ожидания при работе процессора с памятью.
Для автоматического учета всех правил и рекомендаций по установке модулей можно использовать специальные утилиты от вендора. Например, у HP есть Online DDR4 (DDR3) Memory Configuration Tool.
Итого
Вместо пространственного заключения приведу общие рекомендации по выбору памяти:
Для многопроцессорных серверов HP рекомендуется использовать только регистровую память c функцией коррекции ошибок (ECC RDIMM), а для однопроцессорных — небуферизированную с ECC (UDIMM). Планки UDIMM для серверов HP лучше выбирать от этого же производителя, чтобы избежать самопроизвольных перезагрузок.
В случае с RDIMM лучше выбирать одно- и двухранговые модули (1rx4, 2rx4). Для оптимальной производительности используйте двухранговые модули памяти в конфигурациях 1 или 2 DIMM на канал. Создание конфигурации из 3 DIMM с установкой модулей в третий банк памяти значительно снижает производительность.
Список короткий, но здесь все самое необходимое и наименее очевидное. Конечно же, старый как мир принцип RTFM никто не отменял.
Источник
Ранги оперативной памяти: что это такое, как узнать и какая лучше
Итак, оперативная память имеет следующие ключевые параметры:
- Тактовая частота — скорость выполнения операции в МГц.
- Объем — объем хранимых данных в ГБ.
- Пропускная способность — максимальный объем данных в Мбит/с.
- Тайминг — выражает задержки между тактами. Чем ниже показатель — тем лучше.
- Количество каналов — позволяет значительно повысить производительность ОЗУ.
- ЕСС — режим коррекции ошибок в серверных модулях.
- XMP-профиль — умная система адаптивного разгона.
И вроде, чтобы определить, насколько эффективна будет работа оперативной памяти, этого достаточно. Но если ввести еще одну переменную — ранг (rank, ранк) — она с ног на голову перевернет привычную парадигму выбора ОЗУ.
Что такое ранг оперативной памяти?
С приходом на рынок AMD Ryzen в инфополе массово заговорили о рангах оперативной памяти и их чудесных свойствах, особенно для любителей оверклокинга. Но для большинства пользователей понятие о «ранговости» свелось к размещению чипов памяти на текстолите ОЗУ:
- с одной стороны — одноранговый модуль;
- с двух сторон — двухранговый модуль.
Однако это неверное представление, ведь есть еще и применяемая в серверных системах четырехранговая и восьмиранговая память, которые в эту классификацию не вписываются. Предлагаем разобраться в этом подробнее.
Термин «Ранг» (ранк, rank) обозначает одномоментную передачу по шине блока данных плотностью 64 бита (72 бита для серверной ECC-памяти). В простейшем понимании, одноранговый DIMM-модуль (1R) содержит в себе 64-битный фрагмент информации, которым он за один такт работы делится с процессором.
Максимальный объем однорангового модуля типа DDR4 — 8 ГБ, если память набиралась кристаллами по 1 ГБ. В этом случае, за основу можно было взять следующую константу:
Если на текстолите распаяно 16 ГБ по 8 кристаллов в 1 ГБ с двух сторон — это двухранговая память (2R).
В нынешнее время, современная память может быть набрана модулями, где кристаллы наслаиваются друг на друга, увеличивая емкость каждого вдвое.
Не так давно Samsung, Hynix, Micron и другие производители начали выпускать кристаллы повышенной плотности уже на 2 ГБ, поэтому емкость ОЗУ на кристаллах новой версии емкость 1R увеличилась до 16 ГБ.
Итого, в итоге имеем схему:
1 ранк = 8 ГБ (кристаллы «старой» версии по 1 ГБ);
1 ранк = 16 ГБ (кристаллы «новой» версии по 2 ГБ).
Память 4R встречается в продаже только в серверном сегменте. Визуально она выглядит так же, как и двухранговая, но при этом на одной стороне распаяно сразу два ранга (2 блока по 8 ГБ + кристалл коррекции ошибок). Программно модуль настроен таким образом, чтобы каждый из независимых блоков мог передавать по 72 бита информации за раз.
Аналогично для 8R-памяти, только она еще сложнее технически и программно.
В целом, принцип работы многоранговой памяти можно представить так:
В один момент времени работает только часть кристаллов — один ранк. А остальная «грядка» тем временем накапливает заряд и ищет внутри себя данные, чтобы отдать их процессору по шине.
Отличие одноранговой памяти от двухранговой на практике
На данный момент обойти лимит в 64 (72) бита за такт физически невозможно, поскольку так устроена работа стандарта DDR4. Но инженеры тоже не просто так едят свой хлеб, поэтому они додумались обойти ограничения довольно забавным способом: заставили чипы работать попеременно, фактически передавая 128 (144/288) бит вместо 64 (72).
Что это дает на практике? Разберем на примере сервера HPE ProLaint DL380 Gen10. Возьмем за основу тот факт, что в корпусе установлен один процессор Xeon Platinum 8ххх, поскольку у него самые широкие возможности. К тому же, чип поддерживает планки до 128 ГБ. Умножим это число на 12 (столько слотов ОЗУ выделено под процессор) и получим 1536 ГБ. Такого результата можно добить только с использованием 8R-планок с кристаллами по 2 ГБ.
Но тут стоит понимать, на серверной памяти DDR4 расположено 288 контактов, каждый из которых передает 1 бит данных. Если вдарить по всем потокам, ОС запестрит ошибками, поскольку больше 72 бит переварить не может. С 4R/8R-планками все еще сложнее: некоторые выдают только 36 бит вместо 72, и именуются Load-reduced Memory (LRDIMM), комплект с пониженной нагрузкой).
Т.е. вы получаете больший объем, но сниженную производительность. Тайминги у такой памяти ниже, задержка доступа — выше, частота работы не превышает 2933 МГц для Xeon Platinum, 2666 МГц для Gold, 2400 для Silver и 2133 для Bronze.
Также сервер не позволит использовать память с разной ранговостью. Если вставили модуль 2R, будьте добры добавлять такие же, иначе сильно потеряете в скорости и стабильности.
В защиту 2R/4R скажем следующее:
- Одна двухранговая планка быстрее двух одноранговых при идентичной частоте.
- ОЗУ 4R и 8R позволяют собрать на себе объем памяти, недостижимый для 1R/2R.
- Интеллектуальная система передачи пакетов в HPE Smart Memory оптимизирует работу, грамотно жонглируя ранками, увеличивая производительность до 23% и снижая задержки на 25% по сравнению с обычными модулями 2R-8R.
- При правильной настройке последовательности чтения ранговая память имеет преимущество над стандартной. Ранговое чередование обладает более низким приоритетом, чем канальное, поэтому по трем каналам на одной планке данные перетекут быстрее, чем по двум независимым модулям ОЗУ.
Но не забывайте, что полностью раскрыть потенциал многоранговой оперативной памяти можно только при правильно подобранном процессоре. Более подробную информацию вы сможете получить у консультантов компании Маркет.Марвел.
Какой ранг памяти лучше?
Выбирая, что лучше: одноранговая или двухранговая оперативная память, стоит опираться на частотные показатели и объем передаваемых данных. Двухранговая память с частотой 3000 МГц обгоняет по производительности одноранговый модуль при частоте в 3333 МГц.
Также владельцы двухранговой памяти получают следующие преимущества:
- выше частота чтения/записи в Гбит/с;
- меньше задержки работы в наносекундах.
Также двухранк, еще и в двух/четырех/шестиканале как нельзя кстати открывает себя в системах с интегрированной графикой, где GPU-модуль процессора черпает память напрямую из ОЗУ. Тут чем быстрее происходит шевеление информации — тем лучше.
Как узнать ранг оперативной памяти по маркировке?
Маркировка оперативной памяти разнится от производителя к производителю, но наиболее распространенными вариантами являются буквенные маркеры:
Также распространена маркировка формата 1Rх4, 2Rх8, 2Rх16, 4Rх4.
Первая часть — 1R, 2R, 4R, 8R — означает ранг.
А вторая х4, х8, х16 — то, сколько байтов за такт способен передавать каждый кристалл на планке.
Чтобы наработать скиллы по чтению маркировки, возьмем за пример память от HPE, поскольку она частенько встречается в серверном сегменте. У этого производителя маркировка планок памяти выглядит так:
- HPE — производитель.
- ggg (GB) — объем одного модуля от 8 до 128 ГБ.
- s (R) — ранки (1/2/4/8).
- ff — битность одного кристалла памяти (4/8/16).
- PC4 — тип памяти DDR4.
- wwww — максимальная рабочая частота в МГц (2133/2400/2666/2933/3200).
- a — тайминги и задержки.
- ppp — количество пакетов на одной подложке (SDP/DDP/3DS/QDP).
- m — тип модуля (ECC UDIMM, R-DIMM, LR-DIMM).
- eeeee — спецификация работы (STND/Smart/Blank).
Закрепляем результат следующими примерами:
- HPE 8GB 1Rx8 PC4-2933Y-R Smart Kit.
- HPE 64GB 4Rx4 DDR4-2666V LR Smart Kit.
- HPE 128GB 8Rx4 PC4-2933Y-L 3DS Smart Kit.
Остались вопросы? Задайте их нашим консультантам и получите исчерпывающий ответ. Мы готовы предложить вам наилучшее решение для вашего оборудования, которое позволит получить максимум производительности.
Ранги оперативной памяти: что это такое, как узнать и какая лучше
Источник