Приводит ли отключение numa interleave в BIOS к выгрузке страниц памяти (когда у процессора 1 не осталось свободной памяти) на жесткий диск на всех системах с двумя процессорами?

Для примера системы dell dual 4114 silver с 24 ГБ на процессор; как это будет работать, если мое приложение выделит сразу 24 ГБ? Следует ли мне беспокоиться о сроке службы моего SSD при записи из-за использования файла подкачки?

Примечание о памяти для примера: 6x8 ГБ равномерно распределены между обоими процессорами (возможно, 3 карты памяти на одном контроллере памяти на каждом процессоре)

0
задан 5 February 2018 в 15:50
1 ответ

Отключение чередования узлов в BIOS не приводит к подкачке системы.

Было бы точнее сказать, что отключение этого параметра переводит чередование NUMA под управление ОС. Эта опция существует для людей, которые используют старые операционные системы, не поддерживающие NUMA. Когда он включен, система представляет все ядра ЦП операционной системе, как если бы они занимали только один сокет ЦП, и выполняет чередование NUMA самостоятельно. Обычно это не то, что вы хотите от современной ОС с поддержкой NUMA, такой как Linux или Windows.

Более подробное объяснение взято из Руководства по настройке производительности и мощности BIOS Dell :

Другой параметр на экране настроек памяти BIOS - это чередование узлов. Эта опция отключена по умолчанию, что означает, что режим NUMA включен. И наоборот, включение чередования узлов означает память перемежается между узлами памяти, и нет представления NUMA для Операционная система. Большинство современных операционных систем поддерживают NUMA в течение многих лет, и планировщики были оптимизированы, чтобы гарантировать, что распределение памяти локализовано до правильного (ближайшего) Узел NUMA. Однако эти планировщики не идеальны, и для достижения максимальной производительности с с учетом рабочей нагрузки (особенно для тестов) может потребоваться ручное вмешательство, чтобы «закрепить» рабочую нагрузку процессы и потоки к определенным ядрам, гарантируя, что память всегда выделяется для локальной NUMA узел для любого данного логического процессора.

Для некоторых приложений, где требуемая память больше, чем память, доступная в одном узел памяти (например, очень большие базы данных), выделение памяти обязательно должно происходить на удаленный узел. Это в таких случаях, как этот, или для других приложений, которые нельзя легко локализовать. к одной комбинации сокета / узла NUMA, где включение чередования узлов может иметь положительный эффекты. Включение чередования узлов было наиболее распространенным явлением несколько лет назад, когда NUMA была относительно недавний выход на серверы x86 и операционные системы не так хорошо знали NUMA. Однако эта ситуация радикально улучшилось, и сегодня количество клиентов, которым необходимо включить Node Interleave, составляет убывает. Обратите внимание, что включение чередования узлов не поддерживается для конфигураций 4P E5-4600.

В текущей операционной системе с поддержкой NUMA этот параметр должен быть отключен, а NUMA следует настраивать в ОС.

2
ответ дан 4 December 2019 в 13:27

Теги

Похожие вопросы