Команда HLT - виновница низкой производительности ОС?
Команда разработчиков Linux подготовила важное обновление для технологии Intel Trust Domain Extensions (TDX) – специального механизма, который обеспечивает изоляцию виртуальных сред на аппаратном уровне. TDX создает защищенные домены доверия для каждой виртуальной машины, гарантируя, что даже администраторы гипервизора не могут получить доступ к конфиденциальным данным гостевой системы.
Специалисты обнаружили, что защищенные виртуальные среды не должны напрямую взаимодействовать с инструкцией HLT – командой процессора, которая переводит ядро в режим ожидания. При таком обращении система формирует исключение виртуализации (#VE), что существенно снижает эффективность и провоцирует сбои в работе.
Для устранения проблемы программисты полностью пересмотрели алгоритм взаимодействия с командой при остановке вычислительного ядра. Они применили имеющуюся архитектуру паравиртуализации – технологии, позволяющей гостевой ОС напрямую обмениваться данными с гипервизором.
В обновлении появились уникальные модули, учитывающие специфику работы защищенных доменов. Также добавлен механизм уведомлений, сигнализирующий о возможном использовании HLT в любом участке программного кода.
Практические тесты демонстрируют существенный рост производительности на определенных типах задач. Особенно улучшения заметны при запуске Java SPECjbb2015 – промышленного теста, имитирующего работу бизнес-приложений в режиме высокой нагрузки.
Увеличение скорости работы связано с двумя ключевыми факторами. Система больше не расходует ресурсы на обработку исключений виртуализации, а также решена проблема с утерянными сигналами пробуждения процессора, возникавшая из-за некорректного использования инструкции HLT.
Изменения планируют включить в релиз ядра Linux 6.15. При этом из-за высокой значимости исправлений их добавят и в актуальные стабильные версии ОС.
Технология TDX впервые дебютировала как экспериментальная функция в процессорах Intel Xeon Scalable четвертого поколения, известных под кодовым названием Sapphire Rapids. В последующей линейке Emerald Rapids она получила полноценную реализацию, став одним из фундаментальных компонентов системы безопасности серверных платформ Intel.
Современные центры обработки данных и облачные инфраструктуры активно используют механизмы конфиденциальных вычислений, которые защищают данные не только при хранении и передаче, но и во время обработки. И в этом контексте TDX играет важнейшую роль, обеспечивая надежную изоляцию виртуальных сред на уровне процессора.