Облачные серверы с выделенными ядрами
Облачный сервер с выделенными ядрами — это облачный сервер с vCPU, которые привязаны к потокам конкретных физических ядер процессора, а не переключаются между потоками разных ядер.
Выделенные ядра гарантируют, что облачный сервер использует ресурсы процессора без конкуренции за вычислительные мощности с другими облачными серверами. Такая изоляция:
- обеспечивает облачному серверу стабильную производительность;
- защищает облачный сервер от аппаратных уязвимостей (например Spectre, Meltdown и других) со стороны облачных серверов на той же физической ноде.
Настройка выделенных ядер доступна при создании облачного сервера или при изменении конфигурации облачного сервера.
Для облачного сервера с выделенными ядрами по умолчанию включена опция Hyper-Threading (SMT). Вы можете также настроить обязательное размещение ресурсов на одной NUMA-ноде.
Решаемые задачи
Подходит для высоконагруженных и критичных по производительности систем, где требуется предсказуемая и стабильная работа vCPU без влияния других облачных серверов:
- для запуска баз данных с интенсивной нагрузкой;
- обработки аналитических задач и задач с высокой вычислительной сложностью;
- работы CI/CD-серверов;
- размещения игровых серверов и приложений реального времени, требующих низкой задержки;
- развертывания микросервисов и API с высокой частотой запросов;
- обеспечения стабильной работы мониторинга и логирования при высокой частоте событий.
Hyper-Threading
Hyper-Threading (SMT или гиперпоточность) — технология, которая позволяет одному физическому ядру процессора обрабатывать два потока (threads) одновременно. В таком случае каждая пара vCPU облачного сервера соответствует двум потокам одного физического ядра процессора.
Эта технология повышает производительность на многопоточных задачах, например при работе веб-серверов и корпоративных приложений или рендеринге и обработке видео. Подробнее о технологии и принципах работы в статье блога Selectel Что такое Hyper-Threading.
На облачных серверах с выделенными ядрами Hyper-Threading (SMT) включен по умолчанию. Для облачных серверов без выделенных ядер нельзя включить Hyper-Threading (SMT).
Для баз данных, высоконагруженных вычислений (НРС) или ПО с лицензированием по физическим ядрам рекомендуем протестировать производительность системы с включенной и выключенной опцией Hyper-Threading (SMT). При необходимости опцию можно отключить:
- для стабильной производительности в однопоточных сценариях;
- изоляции задач на уровне физических ядер;
- соответствия лицензионным требованиям.
При отключении опции Hyper-Threading (SMT) отключаются потоки — каждый vCPU облачного сервера соотвествует целому физическому ядру процессора. Количество vCPU на облачном сервере уменьшается вдвое.
Например, вы создаете облачный сервер с включенной опцией Hyper-Threading (SMT) и 8 vCPU. Облачный сервер будет использовать 4 физических ядра, каждое из которых работает в режиме Hyper-Threading (SMT), то есть обрабатывает по 2 потока. Таким образом у облачного сервера 8 vCPU.
Если вы отключите опцию Hyper-Threading (SMT), количество vCPU на облачном сервере сократится до 4 и будет соответствовать количеству физических ядер, а не количеству потоков. Количество занятых физических ядер не изменится, поэтому стоимость облачного сервера останется такой же.
Перед отключением Hyper-Threading (SMT) обязательно протестируйте производительность приложений под нагрузкой — некоторые приложения без Hyper-Threading (SMT) могут работать медленнее.
Обязательное размещение ресурсов на одной NUMA-ноде
NUMA (Non-Uniform Memory Access) — это архитектура многопроцессорных систем. NUMA-ноды — это архитектурные блоки в многопроцес сорных системах, где узел (node) включает один процессор и локальную оперативную память, доступ к которой у процессора внутри ноды быстрый и с низкой задержкой.
При размещении ресурсов на одной NUMA-ноде облачный сервер работает только внутри ноды — использует ядра процессора и локальную память, которые привязаны к ноде. Это способствует минимальным задержкам при работе с памятью.
Вы можете включить обязательное размещение ресурсов облачного сервера на одной NUMA-ноде при создании облачного сервера или изменении конфигурации облачного сервера только с выделенными ядрами и от 4 vCPU. Включить обязательное размещение ресурсов на одной NUMA-ноде для облачных серверов без выделенных ядер нельзя.
Если не получится разместить ресурсы облачного сервера на одной NUMA-ноде, сервер не создастся.
Ограничения
Облачные серверы с выделенными ядрами доступны только в сегментах пула ru-3b, ru-7a и ru-7b.
Настройка выделенных ядер доступна только в линейках Standard и HighFreq. Список флейворов фиксированных конфигураций линеек, которые поддерживают работу с выделенными ядрами, можно посмотреть в таблице Список флейворов фиксированной конфигурации во всех пулах.
Стоимость
Стоимость облачного сервера с выделенными ядрами, опцией Hyper-Threading (SMT) и опцией обязательного размещения на одной NUMA-ноде можно посмотреть на selectel.ru.
Стоимость облачного сервера с выделенными ядрами не меняется:
-
при включенной или отключенной опции Hyper-Threading (SMT);
-
при включенной или отключенной опции обязательного размещения на одной NUMA-ноде.