Тест каналов памяти на Intel Xeon Scalable: как выбрать верное число DIMM
Автор: ServerFlow
Рассказываем об особенностях работы разных конфигураций DIMM в системе с процессорами Intel Xeon Scalable.
Введение
IT-индустрия не стоит на месте, из года в год делая значительные шаги вперед, в том числе и в области разработки передовых компонентов для вычислительных устройств. Особенно сильно усложнился такой элемент, как подсистема оперативной памяти, что связано с развитием центральных процессоров — ядер становится больше, а их производительность увеличивается, в результате чего растут и требования к пропускной способности подсистемы памяти. Вследствие этого, владельцы серверных платформ, которые хотят масштабировать свою систему, вынуждены учитывать не только вместительность модулей памяти, но и оптимальное количество DIMM для корректной работы контроллера. В этой статье мы объясним, как подобрать правильное количество модулей DIMM для достижения максимальной эффективности контроллера памяти, подкрепив это результатами тестов разных конфигураций памяти в тестовом стенде с процессорами Intel Xeon Gold 6244 на сокете LGA-3647.
Что такое подсистема памяти и как она работает?
Подсистема памяти — это компоненты, отвечающие за все операции передачи данных между CPU и RAM. Чтобы лучше понимать принцип работы подсистемы памяти, стоит объяснить, из каких компонентов она состоит:
Контроллер памяти. Элемент, интегрируемый в центральный процессор, который управляет чтением и записью данных.
Каналы памяти. Логические пути, по которым данные передаются между оперативной памятью и процессором.
Модули памяти. Устройства, записывающие и временно хранящие данные для быстрого доступа процессора.
Топология. Технология последовательного подключения устройств друг к другу. От топологии будет зависеть, в какой модуль RAM будут в первую очередь поступать данные. В серверных системах используется топология Daisy Chain.
Все компоненты подсистемы памяти в собранном виде.
Что такое балансировка конфигурации и чередование памяти?
Поскольку в наших тестах мы будем затрагивать такой термин, как балансировка конфигурации, стоит объяснить, что это такое. Балансировка памяти — это процесс правильной интеграции и выбора модулей памяти, при котором все характеристики DIMM совпадают (емкость, ранг, частота, тайминги), все модули являются двухранговыми и были расположены корректно. Если не выполнить балансировку, то эффективность подсистемы может значительно снизиться, поскольку процессор не сможет выполнить так называемое чередование памяти.
Чередование памяти — это технология, позволяющая процессору обращаться к данным в оперативной памяти не последовательно, а параллельно, распределяя запросы между несколькими физическими банками памяти контроллера. При чтении блока данных он разбивается на несколько частей, чтобы банки могли обработать их параллельно, что особенно полезно в многоканальных системах. Если модули установлены парами с учетом балансировки, контроллер будет делить нагрузку между каналами, обращаясь к ним поочередно, тем самым сократив задержки и увеличив пропускную способность.
Схема работы контроллера памяти процессора Intel Xeon Gold 6244. Источник: Intel.
Используемые компоненты
Теперь, когда мы объяснили вам, как работает подсистема памяти и объяснили значение балансировки конфигурации, стоит ознакомиться с компонентами, которые мы использовали для оценки эффективности работы подсистемы памяти.
Материнская плата
Основа нашей системы — материнская плата Supermicro X11DPI-NT с двумя сокетами LGA-3647. Это решение имеет 16 слотов для интеграции модулей DIMM общим объемом до 2 ТБ, поддерживает процессоры Intel Xeon Scalable первого и второго поколения, а также может работать с такими форматами памяти, как DDR4-2666 МГц, DDR4-2933 МГц с поддержкой коррекции ошибок и буферизацией. Стоит отметить, что при интеграции модулей оперативной памяти, мы строго следовали рекомендациям, которые представлены в разделе “Memory Guide” на сайте компании Supermicro. Благодаря интеграции DIMM в правильные слоты, мы обеспечиваем наиболее корректную работу оперативной памяти.
Двухсокетная материнская плата Supermicro X11DPI-NT на базе процессоров Intel Xeon Gold 6244.
Процессор
В качестве центрального процессора мы выбрали чип Intel Xeon Gold 6244 второго поколения на архитектуре Cascade Lake. Этот CPU имеют 8 ядер, 16 потоков, тактовую частоту до 4,4 ГГц, а его главной особенностью является улучшенный шестиканальный контроллер памяти, который обеспечивает лучшее взаимодействие с современными модулями DIMM. Несмотря на то, что процессоры Intel Xeon Gold 6244 вышли еще в 2019 году, эти решения все еще остаются крайне популярными и их можно успешно использовать для различных задач, вроде развертывания 1С.
Серверный центральный процессор Intel Xeon Gold 6244.
Оперативная память
Мы интегрировали в нашу систему модули оперативной памяти от компании Samsung на 32 ГБ формата DDR4-2933 ECC REG. Эти решения являются двухранговыми и имеют 4-битные чипы памяти(2Rx4), разделенные между двумя логическими частями. Благодаря наличию двух рангов, модуль оперативной памяти всегда может принимать новые данные для записи и чтения, что устраняет проблему перегрузки оперативной памяти и ускоряет обработку информации. Двухранговая система памяти является эталонной для интеграции в серверы и другие вычислительные устройства, поэтому в нашем тестировании мы будем использовать именно ее.
Серверный модуль DIMM от компании Samsung на 32 ГБ с поддержкой ECC REG.
Программное обеспечение
Также стоит отметить, что тестовый стенд был запущен на операционной системе Windows Server 2019, а для тестирования производительности памяти использовалось специальный бенчмарк AIDA64 Cache and Memory Benchmark.
Тестирование разных конфигураций памяти в односокетной системе
В рамках нашего тестирования мы ознакомимся с популярными конфигурациями памяти, которые указаны в пользовательском мануале компании Supermicro, протестировав не только рекомендуемые, но и не рекомендуемые сборки. Основываясь на результатах тестов, вы сможете подобрать для себя максимально эффективную конфигурацию, а также сравнить пропускную способность систем с разным количеством CPU и модулей DIMM.
1 CPU: 1 DIMM
Для начала мы проверили производительность оперативной памяти при интеграции одного модуля DIMM в односокетную систему. У компании Supermicro нет отрицательных рекомендаций по установке одного модуля оперативной памяти, однако как видно в результатах теста, производительность такой конфигурации крайне мала.
Односокетная конфигурация с одним модулем DIMM.
1 CPU: 2 DIMM
Интегрируем в систему второй модуль DIMM и замеряем результаты.
Односокетная конфигурация с двумя модулями DIMM.
Тест показал почти 2-кратное увеличение производительности чтения, записи и копирования данных. Также видно незначительное увеличение латентности памяти. На сайте Supermicro нет предупреждений касательно сборок с такой конфигурацией оперативной памяти.
1 CPU: 3 DIMM
Теперь выполним тест более редкой конфигурации с тремя модулями DIMM. Ознакомимся с результатами тестирования на скриншоте ниже:
Односокетная конфигурация с тремя модулями DIMM.
Конфигурация с тремя DIMM может показаться весьма странной, однако контроллер памяти работает в штатном режиме, поскольку CPU на базе LGA3647 имеют 6-каналый контроллер памяти, а трех канальная конфигурация поровну делится на количество модулей оперативной памяти. В результате этого, интеграция третьего модуля обеспечила прирост пропускной способности при минимальном увеличении латентности.
1 CPU: 4 DIMM
Затем мы решили интегрировать в систему четвертый модуль DIMM. Стоит отметить, что из-за наличия 4-каналов памяти в прошлых поколениях CPU Intel Xeon E5, 4 DIMM конфигурации считались эталонными и применялись повсеместно.
Односокетная конфигурация с четырьмя модулями DIMM.
Так как процессор имеет 6 каналов, может показаться, что интеграция 4 модулей оперативной памяти гарантированно вызовет разбалансировку. Однако, компания Intel предусмотрела эту проблему, устранив разбалансировку, что позволило увеличить производительность памяти, при этом снизив латентность на 2 пункта. Возможно, Intel ожидала, что многие пользователи захотят интегрировать в свои системы 4 модуля оперативной памяти как при использовании прошлых поколений CPU, поэтому компания добавила возможность сборки такой гибкой конфигурации на аппаратном уровне.
1 CPU: 5 DIMM
Теперь мы интегрируем в систему 5 модулей памяти. Стоит отметить, что это первая конфигурация памяти, которая не рекомендуется к использованию компанией Supermicro из-за гарантированной разбалансировки вследствие неправильного распределения каналов памяти. Тем не менее, мы решили протестировать такую конфигурацию, поскольку наши клиенты при консультировании интересуются возможностью интеграции дополнительного модуля памяти в систему в целях масштабирования объема памяти. Показываем на практике к чему приводит создание такой конфигурации:
Односокетная конфигурация с пятью модулями DIMM.
Бенчмарк выявил, что добавление пятого модуля DIMM в существующую конфигурацию памяти привело к минимальному приросту производительности — показатели увеличились в пределах статистической погрешности. Это подтверждает гипотезу о возникновении разбалансировки каналов памяти, характерной для несимметричных конфигураций.
Примечательно, что контроллер памяти процессора продемонстрировал гибкость при изменении топологии RAM: интеграция дополнительного модуля не вызвала ожидаемого снижения эффективности работы. В типичных сценариях асимметричная загрузка каналов (например, 5 модулей вместо стандартных 4 провоцирует увеличение латентности из-за неравномерного распределения нагрузки. Однако в данном случае процессор успешно нивелировал потенциально негативное воздействие, сохранив базовые показатели пропускной способности на уровне референсной конфигурации.
1 CPU: 6 DIMM
Интегрируем в систему шестой модуль DIMM и рассмотрим результаты бенчмарка памяти. Такая конфигурация памяти является эталонной из-за задействования всех шести каналов памяти CPU.
Односокетная конфигурация с шестью модулями DIMM.
Как мы видим, значительного прироста пропускной способности не произошло, что весьма парадоксально. Нам так и не удалось выяснить причину такого незначительного увеличения производительности. Возможно, Intel добавили определенный лимит пропускной способности на один CPU, чтобы мотивировать потребителей использовать двухсокетные системы, в которых при интеграции 6 модулей DIMM производительность значительно увеличивается.
Тестирование разных конфигураций памяти в двухсокетной системе
Ранее мы рассмотрели возможные конфигурации памяти в односокетной системе, однако, серверы могут поддерживать два, четыре или даже восемь центральных процессоров. В рамках нашего теста мы создадим двухсокетную систему, поскольку именно такая конфигурация сервера является наиболее востребованной. Но для полноты понимания работы двухсокетной конфигурации и ее влияния на балансировку конфигурации памяти, стоит объяснить, как работает межсоединение между Intel Xeon Scalable второго и первого поколения.
Схема работы подсистемы памяти с двумя процессорами, соединенных двойным интерконнектом UPI. Источник: Supermicro.
Между двумя процессорами проложено 2 интерконнекта Intel под названием UPI (Ultra Path Interconnect), который позволяет чипам Intel Xeon напрямую взаимодействовать друг с другом на скорости до 10,4 ГТ/с, обеспечивая низкую задержку и высокую пропускную способность. Интересно, что компания Intel измеряет скорость передачи чипов не в стандартных гигабитах в секунду, а в гигатранзакциях в секунду, которая определяет количество произведенных операций пересылки данных по каким-либо каналам связи. В платформе Intel Purley разработчики уделили особое внимание улучшению интерконнекта UPI, сделав его пропускную способность вдвое больше по сравнению с предыдущей версией интерконнекта Intel QPI. Эффективность работы интерконнекта процессоров крайне важна для обеспечения высокой производительности подсистемы оперативной памяти, поскольку некоторые приложения могут требовать доступ к памяти сразу от обоих процессоров.
2 CPU: 2 DIMM
Теперь, когда мы объяснили принцип работы интерконнекта в двухсокетных системах, можно приступать к тестированию конфигураций памяти с двумя процессорами. В первую очередь, протестируем конфигурацию с двумя модулями памяти.
Двухсокетная конфигурация с двумя модулями DIMM.
В результате бенчмарков можно наблюдать небольшой прирост скорости чтения и копирования данных по сравнению с односокетной конфигурацией, однако, скорость записи данных была немного снижена. В свою очередь, латентность была снижена на 3 пункта.
2 CPU: 4 DIMM
Переходим к тесту конфигурации с четырьмя модулями DIMM.
Двухсокетная конфигурация с четырьмя модулями DIMM.
Такая конфигурация демонстрирует практически двукратный прирост скорости чтения, записи и копирования данных, а уровень латентности практически не изменился в сравнении с односокетной системой. Это показывает, что интеграция второго процессора действительно оказывает большое влияние на эффективность подсистемы памяти.
2 CPU: 6 DIMM
Далее протестируем систему с шестью модулями памяти.
Двухсокетная конфигурация с шестью модулями DIMM.
В этом случае кратного прироста производительности в режиме чтения не наблюдается, однако, пропускная способность все-таки неплохо возросла. Тем не менее, скорость записи и копирования данных показала небольшой прирост в сравнении с односокетной конфигурацией. Из этого следует вывод, что интеграция второго процессора в большей степени полезна для увеличения отзывчивости оперативной памяти, нежели для увеличения скорости записи и копирования.
2 CPU: 8 DIMM
Теперь проверим производительность при интеграции восьми модулей DIMM.
Двухсокетная конфигурация с восемью модулями DIMM.
Несмотря на отсутствие прямых указаний в документации Supermicro о рисках разбалансировки каналов памяти при установке восьми модулей RAM в двухсокетную конфигурацию, практическое тестирование выявило явный дисбаланс — зафиксировано снижение производительности.
2 CPU: 12 DIMM
Проводим последний тест конфигурации оперативной памяти с 12 модулями DIMM.
Двухсокетная конфигурация с двенадцатью модулями DIMM.
Результаты тестирования продемонстрировали значительное увеличение производительности. Показатели подтверждают, что конфигурация с равномерным распределением модулей памяти (по одному DIMM на канал) является оптимальной для двухсокетных серверных систем. В данном случае задействование 12 независимых каналов (по 6 на каждый процессор) исключает перегрузку контроллера памяти, обеспечивая полную реализацию многоканального режима. Отсутствие конкуренции за доступ к шине минимизирует задержки, а синхронная работа всех каналов позволяет равномерно распределить нагрузку между банками памяти. Это особенно критично для задач, требующих высокой пропускной способности при чтении, таких как обработка транзакционных запросов в СУБД или анализ больших данных в реальном времени.
Выводы
Итак, мы наглядно показали, какой производительности можно добиться при использовании разных конфигураций памяти и даже протестировали сценарии, которые не рекомендуются производителями материнских плат, чтобы отбросить все сомнения пользователей. Компания ServerFlow рекомендует вам ответственно подходить к выбору модулей DIMM и правильно интегрировать их в вашу систему, чтобы достичь наилучшей пропускной способности. Если вы хотите приобрести подходящие модули оперативной памяти для вашей системы, то мы также готовы предложить широкий ассортимент DIMM из нашего каталога. У ServerFlow в наличии есть масса DIMM от разных производителей с емкостью, тактовой частотой и технологиями, удовлетворяющими требования даже самых избирательных клиентов.
Тест каналов памяти на Intel Xeon Scalable: как выбрать верное число DIMM
IT-индустрия не стоит на месте, из года в год делая значительные шаги вперед, в том числе и в области разработки передовых компонентов для вычислительных устройств. Особенно сильно усложнился такой элемент, как подсистема оперативной памяти, что связано с развитием центральных процессоров — ядер становится больше, а их производительность увеличивается, в результате чего растут и требования к пропускной способности подсистемы памяти. Вследствие этого, владельцы серверных платформ, которые хотят масштабировать свою систему, вынуждены учитывать не только вместительность модулей памяти, но и оптимальное количество DIMM для корректной работы контроллера. В этой статье мы объясним, как подобрать правильное количество модулей DIMM для достижения максимальной эффективности контроллера памяти, подкрепив это результатами тестов разных конфигураций памяти в тестовом стенде с процессорами Intel Xeon Gold 6244 на сокете LGA-3647.
Что такое подсистема памяти и как она работает?
Подсистема памяти — это компоненты, отвечающие за все операции передачи данных между CPU и RAM. Чтобы лучше понимать принцип работы подсистемы памяти, стоит объяснить, из каких компонентов она состоит:
Контроллер памяти. Элемент, интегрируемый в центральный процессор, который управляет чтением и записью данных.
Каналы памяти. Логические пути, по которым данные передаются между оперативной памятью и процессором.
Модули памяти. Устройства, записывающие и временно хранящие данные для быстрого доступа процессора.
Топология. Технология последовательного подключения устройств друг к другу. От топологии будет зависеть, в какой модуль RAM будут в первую очередь поступать данные. В серверных системах используется топология Daisy Chain.
Все компоненты подсистемы памяти в собранном виде.
Что такое балансировка конфигурации и чередование памяти?
Поскольку в наших тестах мы будем затрагивать такой термин, как балансировка конфигурации, стоит объяснить, что это такое. Балансировка памяти — это процесс правильной интеграции и выбора модулей памяти, при котором все характеристики DIMM совпадают (емкость, ранг, частота, тайминги), все модули являются двухранговыми и были расположены корректно. Если не выполнить балансировку, то эффективность подсистемы может значительно снизиться, поскольку процессор не сможет выполнить так называемое чередование памяти.
Чередование памяти — это технология, позволяющая процессору обращаться к данным в оперативной памяти не последовательно, а параллельно, распределяя запросы между несколькими физическими банками памяти контроллера. При чтении блока данных он разбивается на несколько частей, чтобы банки могли обработать их параллельно, что особенно полезно в многоканальных системах. Если модули установлены парами с учетом балансировки, контроллер будет делить нагрузку между каналами, обращаясь к ним поочередно, тем самым сократив задержки и увеличив пропускную способность.
Схема работы контроллера памяти процессора Intel Xeon Gold 6244. Источник: Intel.
Используемые компоненты
Теперь, когда мы объяснили вам, как работает подсистема памяти и объяснили значение балансировки конфигурации, стоит ознакомиться с компонентами, которые мы использовали для оценки эффективности работы подсистемы памяти.
Материнская плата
Основа нашей системы — материнская плата Supermicro X11DPI-NT с двумя сокетами LGA-3647. Это решение имеет 16 слотов для интеграции модулей DIMM общим объемом до 2 ТБ, поддерживает процессоры Intel Xeon Scalable первого и второго поколения, а также может работать с такими форматами памяти, как DDR4-2666 МГц, DDR4-2933 МГц с поддержкой коррекции ошибок и буферизацией. Стоит отметить, что при интеграции модулей оперативной памяти, мы строго следовали рекомендациям, которые представлены в разделе “Memory Guide” на сайте компании Supermicro. Благодаря интеграции DIMM в правильные слоты, мы обеспечиваем наиболее корректную работу оперативной памяти.
Двухсокетная материнская плата Supermicro X11DPI-NT на базе процессоров Intel Xeon Gold 6244.
Процессор
В качестве центрального процессора мы выбрали чип Intel Xeon Gold 6244 второго поколения на архитектуре Cascade Lake. Этот CPU имеют 8 ядер, 16 потоков, тактовую частоту до 4,4 ГГц, а его главной особенностью является улучшенный шестиканальный контроллер памяти, который обеспечивает лучшее взаимодействие с современными модулями DIMM. Несмотря на то, что процессоры Intel Xeon Gold 6244 вышли еще в 2019 году, эти решения все еще остаются крайне популярными и их можно успешно использовать для различных задач, вроде развертывания 1С.
Серверный центральный процессор Intel Xeon Gold 6244.
Оперативная память
Мы интегрировали в нашу систему модули оперативной памяти от компании Samsung на 32 ГБ формата DDR4-2933 ECC REG. Эти решения являются двухранговыми и имеют 4-битные чипы памяти(2Rx4), разделенные между двумя логическими частями. Благодаря наличию двух рангов, модуль оперативной памяти всегда может принимать новые данные для записи и чтения, что устраняет проблему перегрузки оперативной памяти и ускоряет обработку информации. Двухранговая система памяти является эталонной для интеграции в серверы и другие вычислительные устройства, поэтому в нашем тестировании мы будем использовать именно ее.
Серверный модуль DIMM от компании Samsung на 32 ГБ с поддержкой ECC REG.
Программное обеспечение
Также стоит отметить, что тестовый стенд был запущен на операционной системе Windows Server 2019, а для тестирования производительности памяти использовалось специальный бенчмарк AIDA64 Cache and Memory Benchmark.
Тестирование разных конфигураций памяти в односокетной системе
В рамках нашего тестирования мы ознакомимся с популярными конфигурациями памяти, которые указаны в пользовательском мануале компании Supermicro, протестировав не только рекомендуемые, но и не рекомендуемые сборки. Основываясь на результатах тестов, вы сможете подобрать для себя максимально эффективную конфигурацию, а также сравнить пропускную способность систем с разным количеством CPU и модулей DIMM.
1 CPU: 1 DIMM
Для начала мы проверили производительность оперативной памяти при интеграции одного модуля DIMM в односокетную систему. У компании Supermicro нет отрицательных рекомендаций по установке одного модуля оперативной памяти, однако как видно в результатах теста, производительность такой конфигурации крайне мала.
Односокетная конфигурация с одним модулем DIMM.
1 CPU: 2 DIMM
Интегрируем в систему второй модуль DIMM и замеряем результаты.
Односокетная конфигурация с двумя модулями DIMM.
Тест показал почти 2-кратное увеличение производительности чтения, записи и копирования данных. Также видно незначительное увеличение латентности памяти. На сайте Supermicro нет предупреждений касательно сборок с такой конфигурацией оперативной памяти.
1 CPU: 3 DIMM
Теперь выполним тест более редкой конфигурации с тремя модулями DIMM. Ознакомимся с результатами тестирования на скриншоте ниже:
Односокетная конфигурация с тремя модулями DIMM.
Конфигурация с тремя DIMM может показаться весьма странной, однако контроллер памяти работает в штатном режиме, поскольку CPU на базе LGA3647 имеют 6-каналый контроллер памяти, а трех канальная конфигурация поровну делится на количество модулей оперативной памяти. В результате этого, интеграция третьего модуля обеспечила прирост пропускной способности при минимальном увеличении латентности.
1 CPU: 4 DIMM
Затем мы решили интегрировать в систему четвертый модуль DIMM. Стоит отметить, что из-за наличия 4-каналов памяти в прошлых поколениях CPU Intel Xeon E5, 4 DIMM конфигурации считались эталонными и применялись повсеместно.
Односокетная конфигурация с четырьмя модулями DIMM.
Так как процессор имеет 6 каналов, может показаться, что интеграция 4 модулей оперативной памяти гарантированно вызовет разбалансировку. Однако, компания Intel предусмотрела эту проблему, устранив разбалансировку, что позволило увеличить производительность памяти, при этом снизив латентность на 2 пункта. Возможно, Intel ожидала, что многие пользователи захотят интегрировать в свои системы 4 модуля оперативной памяти как при использовании прошлых поколений CPU, поэтому компания добавила возможность сборки такой гибкой конфигурации на аппаратном уровне.
1 CPU: 5 DIMM
Теперь мы интегрируем в систему 5 модулей памяти. Стоит отметить, что это первая конфигурация памяти, которая не рекомендуется к использованию компанией Supermicro из-за гарантированной разбалансировки вследствие неправильного распределения каналов памяти. Тем не менее, мы решили протестировать такую конфигурацию, поскольку наши клиенты при консультировании интересуются возможностью интеграции дополнительного модуля памяти в систему в целях масштабирования объема памяти. Показываем на практике к чему приводит создание такой конфигурации:
Односокетная конфигурация с пятью модулями DIMM.
Бенчмарк выявил, что добавление пятого модуля DIMM в существующую конфигурацию памяти привело к минимальному приросту производительности — показатели увеличились в пределах статистической погрешности. Это подтверждает гипотезу о возникновении разбалансировки каналов памяти, характерной для несимметричных конфигураций.
Примечательно, что контроллер памяти процессора продемонстрировал гибкость при изменении топологии RAM: интеграция дополнительного модуля не вызвала ожидаемого снижения эффективности работы. В типичных сценариях асимметричная загрузка каналов (например, 5 модулей вместо стандартных 4 провоцирует увеличение латентности из-за неравномерного распределения нагрузки. Однако в данном случае процессор успешно нивелировал потенциально негативное воздействие, сохранив базовые показатели пропускной способности на уровне референсной конфигурации.
1 CPU: 6 DIMM
Интегрируем в систему шестой модуль DIMM и рассмотрим результаты бенчмарка памяти. Такая конфигурация памяти является эталонной из-за задействования всех шести каналов памяти CPU.
Односокетная конфигурация с шестью модулями DIMM.
Как мы видим, значительного прироста пропускной способности не произошло, что весьма парадоксально. Нам так и не удалось выяснить причину такого незначительного увеличения производительности. Возможно, Intel добавили определенный лимит пропускной способности на один CPU, чтобы мотивировать потребителей использовать двухсокетные системы, в которых при интеграции 6 модулей DIMM производительность значительно увеличивается.
Тестирование разных конфигураций памяти в двухсокетной системе
Ранее мы рассмотрели возможные конфигурации памяти в односокетной системе, однако, серверы могут поддерживать два, четыре или даже восемь центральных процессоров. В рамках нашего теста мы создадим двухсокетную систему, поскольку именно такая конфигурация сервера является наиболее востребованной. Но для полноты понимания работы двухсокетной конфигурации и ее влияния на балансировку конфигурации памяти, стоит объяснить, как работает межсоединение между Intel Xeon Scalable второго и первого поколения.
Схема работы подсистемы памяти с двумя процессорами, соединенных двойным интерконнектом UPI. Источник: Supermicro.
Между двумя процессорами проложено 2 интерконнекта Intel под названием UPI (Ultra Path Interconnect), который позволяет чипам Intel Xeon напрямую взаимодействовать друг с другом на скорости до 10,4 ГТ/с, обеспечивая низкую задержку и высокую пропускную способность. Интересно, что компания Intel измеряет скорость передачи чипов не в стандартных гигабитах в секунду, а в гигатранзакциях в секунду, которая определяет количество произведенных операций пересылки данных по каким-либо каналам связи. В платформе Intel Purley разработчики уделили особое внимание улучшению интерконнекта UPI, сделав его пропускную способность вдвое больше по сравнению с предыдущей версией интерконнекта Intel QPI. Эффективность работы интерконнекта процессоров крайне важна для обеспечения высокой производительности подсистемы оперативной памяти, поскольку некоторые приложения могут требовать доступ к памяти сразу от обоих процессоров.
2 CPU: 2 DIMM
Теперь, когда мы объяснили принцип работы интерконнекта в двухсокетных системах, можно приступать к тестированию конфигураций памяти с двумя процессорами. В первую очередь, протестируем конфигурацию с двумя модулями памяти.
Двухсокетная конфигурация с двумя модулями DIMM.
В результате бенчмарков можно наблюдать небольшой прирост скорости чтения и копирования данных по сравнению с односокетной конфигурацией, однако, скорость записи данных была немного снижена. В свою очередь, латентность была снижена на 3 пункта.
2 CPU: 4 DIMM
Переходим к тесту конфигурации с четырьмя модулями DIMM.
Двухсокетная конфигурация с четырьмя модулями DIMM.
Такая конфигурация демонстрирует практически двукратный прирост скорости чтения, записи и копирования данных, а уровень латентности практически не изменился в сравнении с односокетной системой. Это показывает, что интеграция второго процессора действительно оказывает большое влияние на эффективность подсистемы памяти.
2 CPU: 6 DIMM
Далее протестируем систему с шестью модулями памяти.
Двухсокетная конфигурация с шестью модулями DIMM.
В этом случае кратного прироста производительности в режиме чтения не наблюдается, однако, пропускная способность все-таки неплохо возросла. Тем не менее, скорость записи и копирования данных показала небольшой прирост в сравнении с односокетной конфигурацией. Из этого следует вывод, что интеграция второго процессора в большей степени полезна для увеличения отзывчивости оперативной памяти, нежели для увеличения скорости записи и копирования.
2 CPU: 8 DIMM
Теперь проверим производительность при интеграции восьми модулей DIMM.
Двухсокетная конфигурация с восемью модулями DIMM.
Несмотря на отсутствие прямых указаний в документации Supermicro о рисках разбалансировки каналов памяти при установке восьми модулей RAM в двухсокетную конфигурацию, практическое тестирование выявило явный дисбаланс — зафиксировано снижение производительности.
2 CPU: 12 DIMM
Проводим последний тест конфигурации оперативной памяти с 12 модулями DIMM.
Двухсокетная конфигурация с двенадцатью модулями DIMM.
Результаты тестирования продемонстрировали значительное увеличение производительности. Показатели подтверждают, что конфигурация с равномерным распределением модулей памяти (по одному DIMM на канал) является оптимальной для двухсокетных серверных систем. В данном случае задействование 12 независимых каналов (по 6 на каждый процессор) исключает перегрузку контроллера памяти, обеспечивая полную реализацию многоканального режима. Отсутствие конкуренции за доступ к шине минимизирует задержки, а синхронная работа всех каналов позволяет равномерно распределить нагрузку между банками памяти. Это особенно критично для задач, требующих высокой пропускной способности при чтении, таких как обработка транзакционных запросов в СУБД или анализ больших данных в реальном времени.
Выводы
Итак, мы наглядно показали, какой производительности можно добиться при использовании разных конфигураций памяти и даже протестировали сценарии, которые не рекомендуются производителями материнских плат, чтобы отбросить все сомнения пользователей. Компания ServerFlow рекомендует вам ответственно подходить к выбору модулей DIMM и правильно интегрировать их в вашу систему, чтобы достичь наилучшей пропускной способности. Если вы хотите приобрести подходящие модули оперативной памяти для вашей системы, то мы также готовы предложить широкий ассортимент DIMM из нашего каталога. У ServerFlow в наличии есть масса DIMM от разных производителей с емкостью, тактовой частотой и технологиями, удовлетворяющими требования даже самых избирательных клиентов.
А какие результаты тестов были бы в случае подключения CXl-модулей от того же самсунга? Что происходит при установки палок в димы и ребенок знает, а в 2025 году этого далеко не всегда хватает, должны же понимать)
Serverflow
Среди нашего оборудования пока что CXL нет, мы как раз занимаемся этим вопросом, так как технология очень интересная. Но ввиду отсутствия провести тесты не можем, а статья полностью состоит из нашего собственного опыта использования, и разбавлять его чем-то взятым из Интернета мы не хотим. Тем более, что информация про CXL мягко говоря не структурирована, и в ее подлинности мы не можем быть уверены :)
Получите скидку 3 000 рублей или бесплатную доставку за подписку на новости*!
* — скидка предоставляется при покупке от 30 000 рублей, в ином случае предусмотрена бесплатная доставка.
Мы получили ваш отзыв!
Он появится на сайте после модерации.
Мы получили ваш отзыв!
Он появится на сайте после модерации.
Продолжная использовать наш сайт, вы даете согласие на использование файлов Cookie, пользовательских данных (IP-адрес, вид операционной системы, тип браузера, сведения о местоположении, источник, откуда пришел на сайт пользователь, с какого сайта или по какой рекламе, какие страницы
открывает и на какие страницы нажимает пользователь) в целях функционирования сайта, проведения статистических исследований и обзоров. Если вы не хотите, чтобы ваши данные обрабатывались, покиньте сайт.