Сбалансированные конфигурации памяти процессоров Intel Xeon E5 v3, v4, E7 v3 — СМБ-Решения

Достижение максимальной производительности System x и ThinkServer с использованием балансировки конфигурации памяти

Последнее обновление: октябрь 2017

Представление трех правил балансировки памяти процессоров

Сравнение производительности сбалансированных и несбалансированных конфигураций

Объяснение технологии чередования и ее важности

Советы по балансировке памяти

Авторы:

Dan Colglazier

Joseph Jakubowski

Tristian “Truth” Brown

Lenovo Press

Перевод подготовлен SMB-Solution

Обзор

Балансировка памяти при конфигурировании сервера важна для достижения максимума пропускной способности памяти и общей производительности системы (сервера). Серверы Lenovo с процессорами Intel Xeon имеют 4 или 8 каналов памяти на процессор и позволяют установить до трех модулей DIMM на канал, поэтому важно понять, что считается сбалансированной конфигурацией, а что — нет.

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

Этот документ предназначен для клиентов System x и ThinkServer, а также для деловых партнеров и продавцов, желающих понять, как максимизировать производительность серверов Lenovo.

В Lenovo Press мы объединяем экспертов для выпуска технических публикаций по важным для вас темам, предоставляя информацию и рекомендации по использованию продуктов и решений Lenovo для решения ИТ-задач.

См. Список наших последних публикаций на веб-сайте Lenovo Press:

Время от времени мы обновляем наши документы, поэтому проверьте, есть ли у вас последняя версия этого документа.

Содержание

Описание теста STREAM.

Конфигурация из 4 модулей DIMM — сбалансированная.

Конфигурация из 5 модулей DIMM — несбалансированная.

Конфигурация из 6 модулей DIMM – 3 несбалансированы, 1 сбалансирован.

Конфигурация из 8 модулей DIMM –сбалансированная.

Конфигурация из 8 модулей DIMM –несбалансированная.

Конфигурация из 3 модулей DIMM –несбалансированная.

Применение принципов балансировки памяти для процессоров E7.

Конфигурация из 8 модулей памяти — сбалансированная.

Конфигурация из 9 модулей памяти — несбалансированная.

Конфигурация из 10 модулей памяти — несбалансированная.

Конфигурация из 12 модулей памяти — несбалансированная.

Конфигурация из 14 модулей памяти — несбалансированная.

Конфигурация из 16 модулей памяти — сбалансированная.

Максимизация полосы пропускания памяти.

Влияние параметра Cluster on Die на пропускную способность памяти.

Введение

Подсистема памяти является ключевым компонентом архитектуры серверов Lenovo® на базе процессоров Intel Xeon, которая может повлиять на общую производительность сервера. При правильной настройке подсистема может обеспечить чрезвычайно высокую пропускную способность и низкую задержку доступа к памяти.

Однако, если подсистема памяти неправильно настроена, пропускная способность памяти, доступной серверу, может стать ограниченной, а общая производительность сервера может упасть.

В этом кратком руководстве объясняется концепция сбалансированных конфигураций, которые обеспечивают максимально возможную пропускную способность памяти в архитектуре Intel Xeon. Примеры сбалансированных и несбалансированных конфигураций иллюстрируют их влияние на производительность подсистемы памяти.

Эта статья применима к серверам на базе процессоров Intel Xeon E5 v4 и будущих процессоров E7 v4, а также к семействам процессоров предыдущего поколения Xeon E5 v3 и E7 v3.

Чередование памяти

Доступ к информации, хранящейся в памяти DIMM, управляется контроллером (ами) памяти в процессоре Intel Xeon. В зависимости от конкретного процессора, он содержит один или два контроллера памяти. Каждый контроллер памяти подключен к каналам памяти, которые, в свою очередь, подключены к физическим разъемам, в которые устанавливаются модули памяти DIMM.

Рисунок 1 показывает, как контроллеры памяти процессора Intel E5 подключены к слотам (разъемам) DIMM.

Рис. 1 Схема подключения слотов DIMM к контроллерам памяти процессора Intel Xeon E5

Процессор Xeon оптимизирует обращения к памяти путем создания наборов чередования между контроллерами памяти и / или каналами памяти. Например, если идентичные модули DIMM установлены на обоих каналах, контроллера памяти, он создает двухполосное чередование между этими двумя модулями DIMM. На рисунке 2 показаны два таких набора чередования.

Двухполосное Двухполосное
чередование чередование

Рис. 2 Двухполосное чередование (четыре идентичных модуля DIMM)

Чередование позволяет увеличить пропускную способность памяти за счет одновременной посылки запросов в оба канала памяти, а не последовательного формирования запросов в одном из каналов.

Если различные по объему модули памяти устанавливаются в один канал или если на каналах памяти установлено различное количество идентичных по емкости модулей DIMM, контроллер памяти должен создавать множество наборов чередования. Управление множеством наборов чередования создает дополнительные накладные расходы для контроллера, что может уменьшить пропускную способность системы памяти.

На рисунке 2 показано двухполосное чередование памяти на процессоре Intel E5 в результате установки идентичных модулей памяти DIMM на каждом канале памяти. Двухполосное чередование может быть расширено чередованием между контроллерами памяти. Последовательные адреса будут перемежаться между контроллерами памяти, когда каждый четвертый адрес поступает на каждый канал памяти.

В канале памяти может быть организован второй уровень чередования, называемый чередованием ранков памяти. Ранк памяти — это блок данных, созданный из микросхем памяти в модуле DIMM. Ширина ранка памяти обычно составляет 64 бита. Если поддерживается ECC, добавляются дополнительные 8 бит до общей ширины в 72 бит. Модуль DIMM может содержать несколько ранков памяти, например, один, два и четыре ранка на модуль DIMM. Чередование ранков памяти оптимально, когда все модули DIMM на канале памяти имеют одинаковое количество ранков памяти. Например, каждый модуль DIMM на канале памяти является 2-ранковым DIMM.

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

Сбалансированные конфигурации памяти

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

В результате основные принципы сбалансированной подсистемы памяти заключаются в следующем:

1. Все заполненные каналы памяти должны иметь одинаковую общую емкость памяти и одинаковое общее количество ранков.

2. Все контроллеры памяти в процессорном сокете должны иметь одинаковую конфигурацию модулей DIMM.

3. Все сокеты процессора на одном физическом сервере должны иметь одинаковую конфигурацию модулей DIMM.

Примечание. Мы ссылаемся на вышеуказанные три пункта на протяжении всей этой статьи как на правила балансировки 1, 2 и 3

Описание теста STREAM

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

Для получения дополнительной информации о STREAM Triad см.

Топология памяти

В этой статье мы тестируем сервер с процессором E5-2600 v3 с двумя контроллерами памяти, однако результаты одинаково применимы к серверам с процессорами E5-2600 v4.

Процессоры Xeon E5 нижнего диапазона: процессоры Intel Xeon E5 v3 с менее чем 10 ядрами и процессоры E5 v4 с менее чем 12 ядрами имеют только один контроллер памяти. Все четыре канала памяти подключены к одному контроллеру. В результате, правило балансировки 2 не применимо для процессоров с одним контроллером памяти.

В иллюстрациях различные топологии памяти для процессора с двумя контроллерами будут обозначаться как A: B: C: D, где каждая буква указывает количество модулей DIMM, установленных на каждом канале памяти.

►A — канал памяти 0 на контроллере памяти 0

►B — канал памяти 1 контроллера памяти 0

►C — канал памяти 0 на контроллере памяти 1

►D — канал памяти 1 контроллера памяти 1

Это обозначение показано на рисунке 3.

Рис. 3. Обозначение каналов

Например, конфигурация памяти 3: 2: 1: 0 имеет:

►3 модуля DIMM на канале памяти 0 на контроллере памяти 0

►2 модуля DIMM на канале памяти 1 на контроллере памяти 0

►1 модуль DIMM на канале памяти 0 на контроллере памяти 1

►0 модулей DIMM на канале памяти 1 на контроллере памяти 1

Применение правил балансировки памяти — процессоры E5

Начнем с предположения о том, что правило балансировки памяти 3, описанное в разделе «Сбалансированные конфигурации памяти» на стр. 4, соблюдается и все процессоры на одном физическом сервере имеют одинаковую конфигурацию модулей DIMM.

Конфигурация из 4 модулей DIMM — сбалансированная

Поэтому нам нужно посмотреть только один процессорный сокет для каждой конфигурации памяти. Мы начнем с одного модуля DIMM в каждом канале памяти, который даст конфигурацию памяти 1: 1: 1: 1, показанную на рисунке 4

Рис. 4 Один модуль памяти DIMM в каждом канале
(относительная полоса пропускания STREAM = 100)

Это сбалансированная конфигурация памяти, так как она соответствует правилу балансировки 1 с двух-ранковыми модулями 16 ГБ на всех каналах памяти. Она также соответствует правилу 2, поскольку оба контроллера памяти имеют одинаковую конфигурацию модулей DIMM.

Чередование может выполняться как между контроллерами памяти, так и по обеим парам каналов памяти. Конфигурация 1: 1: 1: 1 обеспечивает максимальную пропускную способность памяти с относительной оценкой STREAM Triad 100.

Конфигурация из 5 модулей DIMM — несбалансированная

Добавляем один модуль памяти, чтобы посмотреть, как это повлияет на пропускную способность системы. Конфигурация 2:1:1:1 показана на рисунке 5.

Рис. 5 Конфигурация 2:1:1:1
(относительная полоса пропускания STREAM = 26)

Это не сбалансированная конфигурация памяти, так как она ломает сразу 2 правила балансировки памяти: 1 — различная емкость и число ранков памяти на разных каналах; 2 — различные конфигурациями DIMM на контроллерах памяти.

На контроллере 1 создается 2-полосный набор чередования;
Контроллер 0 должен создать два отдельных набора чередования для трех модулей DIMM на двух его каналах памяти:

►2-полосный набор чередования создается с использованием одного модуля DIMM из каждого канала памяти.

►1-полосный набор чередования создается с использованием оставшегося DIMM на контроллере 0 Channel 0.

Чередование по контроллерам памяти не выполняется для этой конфигурации из-за несбалансированной памяти между ними. Невозможность чередования между контроллерами памяти в сочетании со служебными данными чередования на канале памяти 0 уменьшает пропускную способность памяти конфигурации памяти 2: 1: 1: 1 до 26% относительно конфигурации памяти 1: 1: 1: 1.

Конфигурация из 6 модулей DIMM – 3 несбалансированы, 1 сбалансирован

Существует множество способов заполнения шести модулей DIMM в двенадцати слотах. Мы рассмотрим четыре разных способа, чтобы увидеть их влияние на пропускную способность памяти.

Первый — это конфигурация памяти 2: 1: 1: 2, показанная на рисунке 6.

Рис. 6 Конфигурация 2:1:1:2
(относительная полоса пропускания STREAM = 52)

Это несбалансированная конфигурация памяти, так как она не соответствует правилу балансировки памяти 1: два канала памяти имеют по 32 ГБ памяти и в сумме четыре ранка, в то время как другие два имеют только 16 ГБ памяти и два ранка. Правило балансировки 2 выполняется, так как оба контроллера памяти имеют одинаковую конфигурацию модулей памяти DIMM, что позволяет осуществлять чередование по контроллерам памяти.

Каждый контроллер памяти должен создать два отдельных набора чередования для трех модулей DIMM на своих двух каналах памяти, как описано выше для контроллера памяти 0 в конфигурации памяти 2: 1: 1: 1. Правило балансировки 2 соблюдается, так как контроллеры имеют симметричную конфигурацию DIMM. Несмотря на это, накладные расходы на чередование нескольких наборов на каналах уменьшают относительную пропускную способность памяти в конфигурации 2: 1: 1: 2 до 52.

Второй способ установки 6 модулей DIMM — это конфигурация памяти 3: 1: 1: 1, показанная на рисунке 7.

Рис. 7 Конфигурация 3:1:1:1
(относительная полоса пропускания STREAM = 20)

Эта конфигурация несимметричной памяти не соответствует правилу балансировки памяти 1, так как один канал имеет больше объема памяти и ранков, чем другие. Он также не соответствует правилу 2, поскольку контроллеры памяти имеют различные конфигурации DIMM.

Чередование не может выполняться между контроллерами памяти. Контроллер 1 может чередовать свои каналы памяти, поскольку они соответствуют сбалансированной схеме памяти 1. Контроллер памяти 0 должен будет создать одно двух-полосное чередование по его каналам памяти и два набора 1-полосного чередования для двух модулей DIMM на его канале памяти 0 ,

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

Один из путей выполнения правила балансировки памяти 2 с шестью модулями DIMM — конфигурация памяти 3: 0: 3: 0, показанная на рисунке 8.

Рис. 8 Конфигурация 3:0:3:0
(относительная полоса пропускания STREAM = 39)

Эта конфигурация памяти соответствует правилу балансировки памяти 1 и представляет собой сбалансированную конфигурацию. Тем не менее, все каналы памяти должны быть загружены для достижения максимальной пропускной способности памяти, а в конфигурации 3:0:3:0 задействованы только 2 из 4 каналов.

Чередование осуществляется между контроллерами памяти. Помимо этого, каждый контроллер памяти будет создавать три одно-полосных набора чередования на канале памяти 0.

Несмотря на то, что правило балансировки 2 выполняется, эта конфигурация имеет относительную пропускную способность памяти 39 — в основном, из-за не задействованного канала памяти 1 обоих контроллеров.

Примечание переводчика. В процессорах XeonE5-xxxxv3 и v4 установка второго и третьего модуля DIMM на канал приводит к снижению на ступень скорости работы контроллера с модулями. Так, если на канал установлен один модуль, он может работать на частоте 2400 MHz. Установка второго модуля на тот же канал приводит к снижению частоты до, 2133 MHz. Третьего — до 1866 MHz. Это связано с нагрузкой на линии шины. Так что, несмотря на оптимизацию производительности, полученную за счет чередования, схема 3:0:3:0 не может считаться оптимальной в целом из-за снижения частоты шины.

Частота в конфигурациях 1 DIMM / канал (1DPC), 2 DIMM / канал (2DPC), 3 DIMM / канал (3DPC),

Частота модуля DIMM

Последний рассматриваемый способ организовать шесть модулей DIMM состоит в том, чтобы разместить их все на один контроллер памяти в схему 3: 3: 0: 0, как показано на рисунке 9.

Рис. 9 Конфигурация 3:3:0:0
(относительная полоса пропускания STREAM = 38)

Эта конфигурация памяти не соответствует правилу балансировки памяти 1 так же, как конфигурация памяти 3: 0: 3: 0. Она также не соответствует правилу 2, так как вся память находится на одном контроллере памяти. Наличие одного не задействованного контроллера памяти полностью исключает его вклад в пропускную способность.

Чередование может происходить между каналами на контроллере памяти 0. Несмотря на это, конфигурация памяти 3: 3: 0: 0 имеет относительную пропускную способность памяти лишь 38.

Конфигурация из 8 модулей DIMM –сбалансированная

Используя 8 модулей DIMM просто создать сбалансированную конфигурацию 2:2:2:2, как показано на рисунке 10

Рис. 10 Конфигурация 2:2:2:2
(относительная полоса пропускания STREAM = 100)

Эта конфигурация памяти соответствует правилу балансировки памяти 1 с использованием всех каналов, заполненных одинаково, а также правилу 2, поскольку каждый контроллер памяти имеет одинаковую конфигурацию DIMM.

Эта конфигурация памяти может использовать чередование как между контроллерами памяти, так и между каналами памяти. Конфигурация 2: 2: 2: 2 обеспечивает максимальную относительную пропускную способность памяти 100.

Конфигурация из 8 модулей DIMM –несбалансированная

Те же 8 модулей памяти могут быть размещены в несбалансированной конфигурации 3:1:1:3, как показано на рисунке 11

Рис. 11 Конфигурация 3:1:1:3
(относительная полоса пропускания STREAM = 53)

Эта конфигурация не соответствует правилу балансировки памяти 1, так как половина каналов памяти имеет 48 ГБ памяти и 6 ранков, тогда как другие имеют только 16 ГБ памяти и 2 ранка.

Эта конфигурация памяти может чередоваться по контроллерам памяти, но не эффективна по каналам памяти. Каждый контроллер памяти будет иметь один двух-полосный набор чередования и два набора одно-полосного чередования. Такое сочетание снижает относительную пропускную способность памяти до 53.

Конфигурация из 3 модулей DIMM –несбалансированная

Еще одна конфигурация памяти, которую необходимо рассмотреть, состоит только из трех модулей памяти DIMM в конфигурации 1: 1: 1: 0, показанной на рисунке 12.

Рис. 12 Конфигурация 1:1:1:0
(относительная полоса пропускания STREAM = 60)

Эта конфигурация несимметричной памяти не соответствует правилу балансировки памяти 1 с одним незадействованным каналом памяти и правилу 2 — два модуля DIMM на одном контроллере памяти и только один на другом.

Эта конфигурация памяти не может быть эффективно перемежена ни по контроллерам памяти, ни по каналам памяти контроллера памяти 1. Она может чередоваться только по каналам памяти контроллера памяти 0.

Она также теряет в производительности из-за отсутствием какого-либо вклада в пропускную способность памяти канала памяти 1 контроллера памяти 1, поскольку он не используется. Результатом является относительная ширина полосы пропускания памяти 60.

Сводная таблица производительности для процессоров IntelXeonE5 v3, v4

Кол-во устано-вленных DIMM

Кол-во наборов чередования
Кратность чередования, схема объединения

Результат тестов – относительная производительность

Балансированная или нет

1
2x MC0CH0D0:MC0CH1D0

1
4x MC0CH0D0:MC0CH1D0:MC1CH0D0:MC1CH1D0

3
2x MC1CH0D0:MC1CH1D0
2x MC0CH0D0:MC0CH1D0
1x MC0CH0D1

2
4x MC0CH0D0:MC0CH1D0:MC1CH0D0:MC1CH1D0
2x MC0CH0D1:MC1CH1D1

4
2x MC0CH0D0:MC0CH1D0
1x MC0CH0D1
1x MC0CH0D2
2x MC1CH0D0:MC1CH1D0

7
2x MC0CH0:MC1CH0
1x MC0CH0D0
1x MC0CH0D1
1x MC0CH0D2
1x MC1CH0D0
1x MC1CH0D1
1x MC1CH0D2

1
2x MC0CH0:MC0CH1

1
4x MC0CH0:MC0CH1:MC1CH0:MC1CH1

3
4x MC0CH0D0:MC0CH1D0:MC1CH0D0:MC1CH1D0
2x MC0CH0D1:MC1CH1D1
2x MC0CH0D2:MC1CH1D2

Применение принципов балансировки памяти для процессоров E7

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

Каждый процессор IntelXeonE7-xxxxимеет два встроенных контроллера памяти, и каждый контроллер памяти имеет две линии связи Scalable Memory Interconnect generation 2 (SMI2), которыми он подключается к двум масштабируемым буферам памяти. Каждый буфер памяти имеет два канала памяти, и каждый канал поддерживает три модуля DIMM — в общей сложности 24 модуля DIMM на процессор. Использование буферов памяти удваивает количество каналов памяти и модулей DIMM, поддерживаемых каждым процессором.

Архитектура памяти процессора E7 показана на рисунке 13

Рисунок 13. Схема подключения модулей DIMMк процессору IntelXeonE7

Конфигурации памяти будут обозначаться как A: B: C: D: E: F: G: H, где каждая буква указывает количество модулей DIMM, заполненных на каждом канале памяти.

► A относится к каналу памяти 0 в буфере памяти 0 на контроллере памяти 0

► B относится к каналу памяти 1 в буфере памяти 0 на контроллере памяти 0

► C относится к каналу памяти 0 в буфере памяти 1 контроллера памяти 0

► D относится к каналу памяти 1 в буфере памяти 1 контроллера памяти 0

► E относится к каналу памяти 0 в буфере памяти 2 контроллера памяти 1

► F относится к каналу памяти 1 в буфере памяти 2 контроллера памяти 1

► G относится к каналу памяти 0 в буфере памяти 3 на контроллере памяти 1

► H относится к каналу памяти 1 буфера памяти 3 контроллера памяти 1

Это обозначение показано на рисунке 14

Рисунок 14 Обозначение каналов процессора E7

Буферы памяти обеспечивают еще один уровень, по которому может происходить чередование. Правило балансировки памяти 2 теперь одинаково применимо как к буферам памяти, как и к контроллерам памяти, поскольку все буферы памяти в процессорном сокете должны иметь одинаковую конфигурацию модулей DIMM, чтобы обеспечить эффективное чередование по ним.

Конфигурация из 8 модулей памяти — сбалансированная

Первая конфигурация памяти, которую рассматриваем, представляет собой сбалансированную конфигурацию памяти 1: 1: 1: 1: 1: 1: 1 с одним модулем DIMM на каждом канале памяти, как показано на рисунке 15. Эта конфигурация памяти соответствует всем правилам сбалансированной памяти и может эффективно чередоваться по контроллерам памяти, буферам памяти и каналам памяти. Она обеспечивает максимальную относительную пропускную способность памяти 100.

Рис. 15 Конфигурация 1:1:1:1:1:1:1:1
(относительная полоса пропускания STREAM = 100)

Конфигурация из 9 модулей памяти — несбалансированная

Добавим один модуль DIMM, чтобы получить несбалансированную конфигурацию памяти 2:1:1:1:1:1:1:1, как показано на рисунке 16.

Рис. 16 Конфигурация 2:1:1:1:1:1:1:1
(относительная полоса пропускания STREAM = 16)

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

Эффективное перемежение происходит между буфером памяти 2 и буфером памяти 3, поскольку оба они имеют одинаковые конфигурации подключенных модулей DIMM.

Трудно создавать чередование с нечетным количеством модулей DIMM. Результатом является очень низкая относительная пропускная способность памяти 16.

Конфигурация из 10 модулей памяти — несбалансированная

Добавим еще один модуль DIMM, чтобы получить несбалансированную конфигурацию памяти 2:1:1:1:2:1:1:1, как показано на рисунке 17.

Рис. 17 Конфигурация 2:1:1:1:2:1:1:1
(относительная полоса пропускания STREAM = 48)

Эта конфигурация соответствует правилу балансировки памяти 2 — оба контроллера памяти имеют одинаковые конфигурации DIMM, что позволяет чередовать модули памяти. Сбалансированная схема памяти не соблюдена для буферов памяти. Правило балансировки памяти 1 также не соблюдается, так как два канала памяти из восьми имеют удвоенную емкость памяти и количество ранков. Буферы памяти 1 и 3 выполняют правило балансировки 1, что позволяет осуществлять эффективное перемежение по каналам памяти. Результатом является относительная ширина полосы памяти 48.

Конфигурация из 12 модулей памяти — несбалансированная

Добавляем еще два модуля DIMM, получаем схему 2:1:2:1:2:1:2:1, показанную на рисунке 18

Рис. 18 Конфигурация 2:1:2:1:2:1:2:1
(относительная полоса пропускания STREAM = 64)

Для каждого контроллера памяти и всех буферов памяти с соответствующими конфигурациями DIMM соблюдаются правило балансировки памяти 2. Это позволяет использовать чередование между всеми ними. К сожалению, правило балансировки 1 памяти не соблюдается, так как половина каналов памяти имеет удвоенную емкость памяти и количество ранков. Результатом является менее эффективное перемежение по каналам каждого буфера и относительная ширина полосы памяти 64.

Конфигурация из 14 модулей памяти — несбалансированная

Используем 14 модулей DIMM, получаем схему 2:1:2:2:2:1:2:2, показанную на рисунке 19

Рис. 19 Конфигурация 2:1:2:2:2:1:2:2
(относительная полоса пропускания STREAM = 33)

Эта конфигурация соответствует правилу балансировки памяти 2 — оба контроллера памяти имеют одинаковые конфигурации DIMM. Это позволяет эффективно чередовать между контроллерами памяти. Буферы памяти не соответствуют правилу балансировки 2, так как часть из них имеет три модуля DIMM, а часть — четыре. Правило балансировки 1 не соблюдается, поскольку не все каналы памяти имеют одинаковую емкость памяти и число ранков. Пары буферов памяти имеют одинаковые конфигурации DIMM: буферы памяти 0 и 2 и буферы памяти 1 и 3. Между этими парами буфера памяти можно эффективно осуществлять чередование. Результатом является относительная ширина полосы памяти 33.

Конфигурация из 16 модулей памяти — сбалансированная

Используем 16 модулей DIMM, получаем сбалансированную схему 2:2:2:2:2:2:2:2, показанную на рисунке 20

Рис. 20 Конфигурация 2:2:2:2:2:2:2:2
(относительная полоса пропускания STREAM = 100)

Схема соответствует правилу балансировки памяти 1, поскольку все каналы памяти имеют одинаковую емкость памяти и количество ранков. Она также соответствует правилу балансировки 2, — оба контроллера памяти и все буферы памяти имеют одинаковые конфигурации DIMM. Это позволяет эффективно использовать чередование на всех уровнях и обеспечивает относительную пропускную способность памяти 100.

Сводная таблица производительности для процессоров IntelXeonE7 v3

Кол-во устано-вленных DIMM

Результат тестов –
относительная производительность

Балансированная или нет

Максимизация полосы пропускания памяти

Чтобы максимизировать пропускную способность памяти сервера за счет технологии чередования, необходимо соблюдать следующие правила:

► Баланс памяти между процессорами — все сокеты процессора на одном физическом сервере должны иметь одинаковую конфигурацию модулей памяти DIMM

► Баланс памяти на контроллерах памяти — все контроллеры памяти в процессоре должны иметь одинаковую конфигурацию модулей памяти DIMM

► Баланс памяти по каналам памяти — все каналы памяти должны быть заполнены и иметь одинаковую общую емкость памяти и одинаковое общее количество ранков

Если серверу требуется заданная емкость памяти, может потребоваться меньшие по емкости модули DIMM или сочетание DIMM разных размеров для создания сбалансированной конфигурации памяти.

Например, может потребоваться 96 ГБ памяти на сервере с одним процессором Intel Xeon E5. Это может быть достигнуто с использованием шести модулей DIMM емкостью 16 ГБ. Но, к сожалению, нет способа следовать всем вышеизложенным правилам балансировки с шестью модулями DIMM на четырех каналах памяти. Вариантами в этой ситуации являются:

► Используйте двенадцать 8 ГБ модулей DIMM. Они будут расположены в виде конфигурации 3: 3: 3: 3, которая будет соответствовать всем правилам балансировки.

► Используйте один 16 ГБ DIMM и один 8 ГБ DIMM на каждом канале.

► Установите больше памяти, чем требуется. Увеличение количества модулей требуется для создания сбалансированной конфигурации памяти. В этом случае восемь 16 ГБ модулей могут быть расположены как сбалансированная конфигурация памяти 2: 2: 2: 2.

Важно создать сбалансированную конфигурацию памяти, следуя всем вышеприведенным правилам, чтобы максимизировать пропускную способность памяти и общую производительность сервера.

Влияние параметра Cluster on Die на пропускную способность памяти

Cluster on Die (CoD) — это параметр, устанавливаемый в UEFI BIOSи эффективно разбивающий процессор на две части, так что он действует как два процессора. Опция CoD доступна только на процессорах Intel Xeon E5-2600 v3 и Intel E5-2600 v4 с двумя контроллерами памяти — процессорами Intel Xeon E5 v3 с 10 или более ядрами и процессорами E5 v4 с 12 или более ядрами.

Конфигурации с включенной опцией CoD могут повысить производительность приложений, которые оптимизированы под Un-Uniform Memory Access (NUMA). Каждая половина процессора рассматривается как отдельный узел NUMA с исключительными правами на половину процессорных ядер, свой контроллер памяти и локально подключенную к нему память. Такая конфигурация может повысить производительность для приложений, данные которых находятся почти полностью внутри кластера, на котором он работает.

На рис. 21 на стр. 16 показан процессор Intel E5 с включенной опцией CoD, создающий два кластера.

Рисунок 21: Конфигурация памяти 2:2:1:1 с включенной опцией CoD, создающей два кластера
(STREAM = 100)

Опция CoD может уменьшить влияние не выполняющегося правила балансировки памяти 2 на производительность системы. Больше памяти может быть подключено к одному контроллеру памяти, и при этом сохраняются условия для максимальной пропускной способности памяти. Это работает, если память сбалансирована по каналам памяти каждого из контроллеров памяти.

Без опции CoD в конфигурации 2: 2: 1: 1 не поддерживается правило балансировки памяти 2, что делает ее несбалансированной конфигурацией и снижает пропускную способностью памяти. С опцией CoD конфигурация 2: 2: 1: 1 обеспечивает максимальную пропускную способность памяти. Тем не менее, рекомендуется соблюдать все принципы сбалансированной памяти даже с конфигурациями с включенной опцией CoD.

Резюме

Общая производительность сервера зависит, в том числе, от производительности подсистемы памяти, которая может при правильной настройке обеспечить высокую пропускную способность и низкую задержку доступа к памяти. Балансировка памяти по контроллерам памяти и каналам памяти создает конфигурации, которые могут эффективно перемежать обращения к памяти между своими модулями DIMM, обеспечивая максимально возможную пропускную способность. Несбалансированная конфигурация может сократить общую пропускную способность до 16% от уровня, обеспечиваемого сбалансированной конфигурацией памяти.

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

Авторы

Эта статья была подготовлена следующей командой специалистов:

Дэн Колглазиер (Dan Colglazier) является старшим инженером в группе Performance Data Center Data Center в Моррисвилле, Северная Каролина. Ранее он провел более 30 лет в IBM, где он начал работать в команде IBM Data Processing Division, помогая улучшить дизайн перспективных архитектур хранения мэйнфреймов. Основное внимание уделяется оценке производительности будущих серверов System x® как в IBM, так и в Lenovo. В настоящее время он является лидером команды по разработке дизайна. Дэн имеет степень бакалавра наук по вычислительной технике и степень магистра в области электротехники в обоих Университетах штата Иллинойс.

Джо Якубовски (Joe Jakubowski) — старший технический сотрудник в лаборатории Lenovo Server Performance Laboratory в Моррисвилле, Северная Каролина. Ранее он провел 30 лет в IBM. Он начал свою карьеру в тестовой организации подразделения IBM Networking Hardware Division и работал над различными адаптерами, коммутаторами и тестовыми инструментами Token Ring. Он провел последние 21 год в подразделении, занимающимся производительностью серверов, уделяя основное внимание работе с базами данных, виртуализацией и новыми технологиями. Его текущая роль включает в себя все аспекты архитектуры и производительности серверов x86. Джо имеет степень бакалавра наук в области электротехники и инженерных операций в Университете штата Северная Каролина и степень магистра в области телекоммуникаций из Университета Пейса.

Tristian «Truth» Brown — инженер по производительности оборудования в команде Lenovo Server Performance Team в Роли, штат Северная Каролина. Он отвечает за аппаратный анализ высокопроизводительных решений на основе флэш-памяти для серверов System x. Truth получил степень бакалавра по электротехнике в Университете штата Теннесси и степень магистра электротехники в Университете штата Северная Каролина. Его основные интересы были сконцентрированы в области разработки и проверки микропроцессора Computer Architecture и System-on-Chip (SoC).

Благодарность следующим людям за их вклад в этот проект:

Чарльз Стефан (Charles Stephan), команда разработчиков производительных серверов Lenovo

Двухканальный режим работы оперативной памяти компьютера: прирост производительности и как включить

Оперативная память (ОЗУ) — необходимая составляющая любого компьютера на базе процессора с архитектурой X86 (не путать с разрядностью ОС). От объёма, латентности и пропускной способности памяти (ПСП) довольно сильно зависит производительность компьютера во всех задачах. Конечный пользователь может изменять по своему усмотрению все эти характеристики, чтобы увеличить производительность “железа”.

Объём оперативной памяти можно увеличить, только купив плашки памяти большего размера и/или докупив к уже имеющимся плашкам ОЗУ новые, если материнская плата обладает достаточным количеством слотов. Да и увеличение объёмов ОЗУ повышает производительность не всегда, только если ранее памяти для хранения промежуточных данных не хватало. К примеру, даже современным AAA проектам не требуется больше 10-12 Гб памяти (хватает и 8 Гб, но уже впритык). Для сёрфинга интернета, работы в офисных приложениях достаточно и меньших объёмов (зависит от используемых приложений). Ну а для серьёзных рабочих станций объёмы от 32 Гб ОЗУ и выше – насущная необходимость.

В отличие от увеличения объёма, прирост производительности от уменьшения латентности и увеличения пропускной способности памяти наблюдается практически всегда. Показатели латентности и ПСП можно изменить в БИОС материнской платы и специализированном софте, если материнская плата позволяет изменять множители/делители частоты ОЗУ, а также тайминги оперативной памяти. Благодаря этому пользователь без денежных затрат может увеличить производительность компьютера. Можете почитать про разгон оперативной памяти через БИОС.

Кроме изменения тактовой частоты, существует другой способ увеличения ПСП – многоканальный режим работы оперативной памяти. Двухканальный режим работы оперативной памяти является самым простым и распространённым частным случаем многоканального режима, доступным большинству пользователей. Этот способ увеличения ПСП не требует никаких особых навыков и знаний, тогда как изменение таймингов и частоты ОЗУ умеют выполнять не все опытные пользователи, не говоря о новичках.

Почему двухканальный режим работы оперативной памяти увеличивает пропускную способность

Скорость передачи данных из ОЗУ, как говорилось выше, зависит от латентности и ПСП. Пропускная способность памяти, в свою очередь, напрямую зависит от тактовой частоты работы ОЗУ и ширины шины обмена данными между контроллером памяти (КП) и оперативной памятью. Ширина шины одного канала ОЗУ у памяти типа DDR всех поколений составляет 64 бита. Контроллеры памяти, поддерживающие многоканальный режим, определяют несколько плашек памяти с шириной шины 64 бит как одно устройство с шириной шины n*64 (где n – количество плашек памяти, при условии, что КП поддерживает n-канальный режим работы ОЗУ). То есть двухканальный режим оперативной памяти увеличивает ширину шины ровно в 2 раза (2*64 = 128 бит). Формула расчёт теоретической ПСП (в Гб/c): “Clock * memory_bus / 8 / 1000”, где “Clock” – эффективная частота памяти (в МГц), а “memory_bus” – ширина шины обмена данными ОЗУ с КП.

Исходя из вышесказанного следует, что теоретическая пропускная способность памяти при увеличении ширины шины кратно возрастает. Следовательно, двухканальный режим оперативной памяти увеличивает пропускную способность в 2 раза.

Как включить двухканальный режим оперативной памяти

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

  1. Поддержка контроллером памяти двухканального режима работы ОЗУ;
  2. Наличие двух и более плашек оперативной памяти одного поколения;
  3. Наличие двух слотов для установки ОЗУ;
  4. Идентичность типов обоих плашек памяти (с ECC или без);
  5. (опционально) Идентичность характеристик плашек оперативной памяти (тактовой частоты, таймингов, кол-ва рангов, производителя чипов памяти и др.).

Чтобы активировать двухканальный режим оперативной памяти, нужно вставить минимум 2 плашки ОЗУ в разные слоты материнской платы (если слотов больше, чем 2, то они должны быть 1 цвета). В большинстве случаев больше ничего делать не нужно, двухканальный режим работы ОЗУ активируется самостоятельно.

Однако иногда пользователю вручную приходится активировать в БИОС функцию “Dual Channel”. Также существует вероятность, что ПК вообще откажется стартовать. Такое случается при использовании разных плашек памяти. В этом случае можно попробовать отключить некоторые функции для ОЗУ в БИОС и/или изменять частоту и тайминги, загрузившись с 1 плашкой.

Проверить, активировался ли двухканальный режим работы оперативной памяти, можно в специализированном софте (например, в CPU-Z или Aida64).

Видно, что двухканальный режим работы оперативной памяти активирован

Прирост производительности от двухканального режима оперативной памяти

Наибольший прирост производительности (практически кратный) от активации двухканального режима ОЗУ получают системы, использующие интегрированную графику. Производительность такой графики зачастую упирается в ПСП и латентность памяти. GPU большую часть времени “вхолостую” простаивает, ожидая данные из ОЗУ (оперативная память в подобных системах используется ещё и в качестве видеопамяти).

Также значительного прироста следует ожидать на системах, страдающих от нехватки ОЗУ. При увеличении скорости обмена данными, ОЗУ за единицу времени может передать больше данных, чем раньше, поэтому данные будут занимать в оперативной памяти немного меньший объём. Кроме того, существенный прирост могут получить системы с мощными процессорами, страдающими от нехватки данных, так как пропускной способности памяти в одноканальном режиме (в первую очередь у памяти устаревших стандартов) не хватает некоторым приложениям для своевременного обмена данными с контроллером памяти. Так в игре Rise of The Tomb Raider Intel Core i7 2600 получает прирост производительности в 34,5% от увеличения пропускной способности памяти, в частности частоты:

На системах с маломощным центральным процессором, использующих дискретную графику и современный тип памяти, прирост производительности в игровых приложениях будет достаточно маленький (значительно увеличатся лишь показатели 0,1% и 1% минимального фпс), не говоря уже о рендеринге, где на первый план выходит мощность ЦП. Так на Intel core i3 6100 двухканальный режим оперативной памяти в 3DMark Fire Strike не даёт никаких преимуществ, в сравнении с одноканальным.

Тогда как прирост ПСП составил внушительных 94%:

В играх прирост производительности небольшой, зато серьёзно вырастает минимальный FPS и скачки времени кадра становятся менее выраженными, что серьёзно повышает плавность игры в целом.

http://store.smb-solution.ru/content/34-server-ram-interleaving-xeon
http://digital-boom.ru/hardware/dvuhkanalnyj-rezhim-operativnoj-pamyati.html

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *