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

Разъём и поколение

Поколения памяти механически несовместимы между собой: ключ в разъёме смещён, и модуль другого поколения не встанет физически. Это защита от очевидной ошибки, но она же означает, что поколение памяти жёстко привязано к платформе. Плата поддерживает ровно один тип, независимо от того, что процессор формально способен работать с другим — переходных плат в массовом сегменте практически нет.

Форм-фактор тоже часть механики. Настольные платы используют полноразмерные модули, ноутбуки и компактные системы — уменьшенные, серверные платформы дополнительно различают модули с регистровым буфером и без него. Регистровый модуль в настольную плату не встанет логически: контроллер не умеет с ним работать, даже когда разъём подходит. Различия серверных типов разобраны в разделе про память с коррекцией ошибок.

Контроллер живёт в процессоре

Ключевой момент, который часто теряется: контроллер памяти встроен в процессор, а не в чипсет платы. Плата задаёт разводку, число слотов, качество трассировки и питание, но максимальную частоту, число каналов и предельный объём определяет процессор.

Из этого следуют практические выводы. Два процессора в одном сокете могут иметь разные официально поддерживаемые частоты памяти — младший обычно скромнее. Число каналов также свойство процессора: настольные модели обычно двухканальные, серверные — от четырёх и выше, и именно поэтому на серверных платах слотов вдвое-втрое больше. Заполнение каналов важнее объёма: один модуль на двухканальном процессоре сокращает пропускную способность вдвое, и на встроенной графике или в задачах, чувствительных к памяти, это видно сразу.

Предельный объём тоже двойное ограничение. Плата указывает максимум для своей разводки, процессор — для своего контроллера, и рабочим оказывается меньшее из двух. На платах с четырьмя слотами заявленный максимум обычно предполагает модули наибольшей доступной ёмкости, которых на момент выпуска платы могло не существовать, поэтому реальную поддержку уточняют по обновлённым таблицам.

Порядок заполнения слотов задаётся платой. При двух модулях их ставят в слоты одного цвета через один — так каждый попадает в свой канал. Постановка обоих модулей подряд оставляет один канал пустым.

Число модулей, ранги и достижимая частота

Чем больше модулей и чем они сложнее внутри, тем труднее контроллеру удерживать высокую частоту. Каждый модуль — это нагрузка на шину, а сигнал на высоких частотах чувствителен к длине линий и отражениям. Отсюда закономерность: четыре модуля стабильно работают на меньшей частоте, чем два той же серии. Производители плат прямо публикуют таблицы, где для четырёх заполненных слотов заявлена более низкая частота.

Ранг — второй фактор. Двухранговый модуль внутри организован как два набора чипов, переключаемых поочерёдно. Такая память часто даёт небольшой прирост за счёт чередования, но нагружает шину сильнее, и предельная частота для неё ниже. Четыре двухранговых модуля — самая тяжёлая для контроллера конфигурация.

Списки проверенных модулей, которые публикуют производители плат, покрывают именно эту область: комбинации, проверенные на конкретной плате с конкретными версиями прошивки. Отсутствие модуля в списке не означает несовместимость — списки неполны по определению, — но наличие снимает часть вопросов.

Профили и заявленная частота

Модули стартуют не на той частоте, что напечатана на упаковке. По умолчанию используется базовый профиль стандарта, а заявленные характеристики хранятся отдельным профилем разгона, который включается в прошивке вручную. Формально это разгон контроллера памяти процессора, и производитель процессора не гарантирует его работу.

Отсюда типичная картина: модули, заявленные на высокую частоту, включаются, система стартует, но при активации профиля падает в ошибки или не проходит POST. Причина — не брак модулей, а предел конкретного экземпляра процессора и разводки платы. Лечение стандартное: снизить частоту на шаг, поднять напряжение памяти в разумных пределах, ослабить тайминги или обновить прошивку — производители регулярно правят таблицы совместимости именно через неё.

Смешивание комплектов

Модули из разных комплектов формально совместимы, если совпадают поколение, напряжение и режим, но комплект тестируется как набор, а два комплекта — нет. Различия в чипах, ревизиях и партиях приводят к тому, что вместе они работают на частоте ниже, чем каждый по отдельности, или требуют ручной настройки таймингов. Практика показывает, что добавление модулей к уже работающей системе стабильно проходит реже, чем установка одного комплекта нужного объёма сразу. Обзор характеристик модулей и режимов работы собран в разделе про оперативную память.