Это предлагаемый Канонический вопрос о памяти сервера.
Мне нужно купить сервер Dell R420, и есть различные комбинации (1600 и 1333 МГц RDIMMS и UDIMMS) и оптимизированная производительность по сравнению с Advanced ECC с экономией и без. Я заметил, что есть только модули DIMM 4 ГБ с UDIMM, поэтому в конечном итоге мне придется перейти на RDIMMS на 16 ГБ.
Что это за варианты и что мне нужно о них знать?
ОЗУ для серверов имеет несколько общих показателей, позволяющих указать ее емкость и способность работать в определенной конфигурации. Чтобы сбить это с толку, существуют разные имена для одного и того же объекта, а «стандартное» имя меняется в зависимости от того, какой тип оперативной памяти вы используете.
Это достаточно просто; каждый должен быть знаком с концепцией того, что оперативная память бывает разной емкости. Конкретный тип ОЗУ определяет максимальный размер одной флешки, но это не имеет значения, поскольку фактические реализации ограничивают объем ОЗУ, который может поддерживать система (т. Е. Проверьте документацию для своей системы, чтобы узнать, какую емкость она поддерживает).
Объем оперативной памяти может быть организован в различных конфигурациях. Обычно для оперативной памяти определенного размера существует только одна стандартная конфигурация. Если вы покупаете сверхдешевую оперативную память в Интернете, имейте в виду, что она может быть нестандартной (особенно если упоминается организация) и не поддерживается вашим сервером.
Для целей этого ответа вы хотите, чтобы скорость ОЗУ соответствовала максимальной скорости системы. ОЗУ, которое на одну, а иногда и две "скорости" быстрее, также будет работать, хотя и с меньшей скоростью. Точно так же RAM, которая на одну или две "скорости" медленнее, будет работать, также с меньшей скоростью.
ECC - это наиболее распространенная форма защиты целостности (т. Е. Проверка того, что космические лучи не перевернули какие-либо биты и ни одна из ячеек памяти не вышла из строя). В большинстве систем оперативная память должна быть либо с кодом коррекции ошибок, либо без нее, в зависимости от требований системы. Иногда это называется 72-битной памятью (неправильное название - остаток 64 каналов данных памяти, получающих 8 бит ECC вдоль шины данных).
Когда в ОЗУ есть ECC, эту информацию о защите можно проверять в любое время. Самая простая защита считывает и проверяет данные ECC только при чтении ОЗУ в этой области памяти. Более продвинутые параметры позволяют системе регулярно проверять ECC. Чаще всего я видел это под названием «очистка памяти»; он работает так же, как очистка дискового массива; и, как и при очистке дискового массива, вы должны включить ее, если нет веской причины для ее отключения.
ECC - это один из шагов, снижающих влияние Ошибка Row Hammer.
Мы не инженеры-электрики, поэтому все, что вам действительно нужно знать, это то, что буферная или зарегистрированная оперативная память позволяет использовать больше оперативной памяти в системе, чем без нее. Как и ECC, это то, что должно поддерживаться системой. В отличие от ECC, многие новые серверы поддерживают как небуферизованную / незарегистрированную, так и буферизованную / зарегистрированную RAM. Старые серверы, как правило, поддерживали только один или другой. Регистры - это тип буфера, но в применении к ОЗУ эти термины используются как синонимы. Я никогда не встречал системы, которая могла бы одновременно смешивать небуферизованные и зарегистрированные.
Когда вы видите UDIMM, «U» означает «без буферизации». Буква R в RDIMM означает «Зарегистрированный».
Ранги
Зарегистрированная оперативная память имеет четко определенные электрические характеристики «использования», измеренные в «разрядах». Каждый канал (или шина) RAM в системе может поддерживать такое количество рангов на каждой поддерживаемой скорости. Обычно системы рассчитаны на две скорости (т. Е. Канал обычно работает на скорости X с рейтингом до A; но со скоростью Y, если выше этого; и возможны только уровни до B).
Доступна оперативная память той же емкости и скорости, но занимающая разное количество рангов. Обычно чем больше емкость, тем больше рангов занимает модуль. Модули низкого напряжения занимают меньше места (согласно спецификации модуля).
Существует множество вариантов конфигурации, не зависящих от того, какую физическую оперативную память вам нужно купить для вашего сервера. К ним относятся зеркалирование ОЗУ (точно так же, как RAID1, но для ОЗУ), резервирование (буквально резервное ОЗУ, которое в случае выхода из строя запасное заменяет его), синхронизацию и соответствующие оптимизации.
Современные серверы обычно имеют контроллер (ы) памяти, интегрированный в ЦП, а не отдельную микросхему северного моста. Это означает, что системы, поддерживающие несколько процессоров, должны иметь гнездо ЦП, соответствующее слоту памяти, чтобы использовать этот слот. Точно так же некоторые процессоры требовали, чтобы в их слотах была заполнена память для работы системы. Подробности см. В документации к системе.
Современные серверы обычно имеют более одного канала памяти. Эти каналы работают в основном независимо, что позволяет увеличить пропускную способность памяти в сценариях с интенсивным использованием памяти. Как правило, следует планировать распределение памяти по всем каналам на всех загруженных ЦП настолько равномерно, насколько это реально, чтобы обеспечить наилучшую производительность.
При обновлении памяти существующего сервера вам, вероятно, следует начать с подтверждения того, какие модули памяти вы установили сейчас, и какие дополнительные / новые / заменяемые модули фактически поддерживаются поставщиком (основной платы) и BIOS.
Для соблюдения условий гарантии и контрактов на поддержку оборудования от вас может потребоваться покупка оригинальных запасных частей у поставщика, а не использование сторонних модулей памяти. Большинство поставщиков перечисляют сертифицированные запасные части для своего оборудования, и у большинства производителей памяти также есть средства выбора продуктов, которые направляют вас к продуктам, которые должны работать с вашим сервером.
Распространенная ошибка заключается в том, что старые серверы не поддерживают новые модули памяти большей емкости, которые на основе всех других свойств подходят и должны работать.
Наиболее распространенный подход - заполнить пустые в настоящее время банки памяти, а не обновлять их до модулей памяти большего размера. NB Вы не можете заполнить банки памяти, назначенные пустым сокетам ЦП.
Узнай, что у тебя есть сейчас
Некоторые консоли удаленного управления, например HP ILO, будут отображать текущую конфигурацию памяти.
Linux dmidecode -t memory
Команда отобразит максимальный объем памяти, поддерживаемый материнской платой, а также информацию о том, какая память присутствует в заполненных банках памяти, а какие еще пусты.
Для систем Windows WMI должен предоставлять аналогичную информацию с wmic MemoryChip
.
Смешивание модулей памяти разных размеров
Хотя это всегда кажется неправильным, я не видел никаких веских причин, по которым это плохо само по себе. В Инструкция по применению подтверждает, что это поддерживаемая конфигурация при соблюдении всех правил, касающихся памяти.
В конфигурациях с несколькими ЦП вам нужна сбалансированная конфигурация памяти, в которой каждый ЦП имеет одинаковый объем памяти на одних и тех же каналах памяти: то есть в конфигурации с двумя ЦП вы можете иметь 2 ГБ в слоте A1 и 4 ГБ в слоте A2, пока это зеркалируется во втором процессоре, 2 ГБ в слоте B1 и 4 ГБ в слоте B2.
Смешивание модулей памяти разной скорости
Вы можете смешивать модули с разными скоростями, если основная плата поддерживает эти скорости. BIOS должен найти наименьший общий знаменатель и регулировать, чтобы все модули работали с одинаковой скоростью. Поскольку обычно более быстрая память стоит дороже, это кажется небольшой тратой денег, хотя она позволяет вам использовать одни старые системы для обновления других.