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

Особенности современной аппаратуры: как на x86-64 изолированные ВМ могут чувствовать друг друга

Узкотематические секции

Технологии виртуализации и контейнеризации
Облака
Железо

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Захватывающая история расследования проблемы с производительностью ВМ, вызванной конкуренцией за кэш L3 и шину к RAM. Будет показано, как инженеры Yandex Cloud смогли найти взаимное влияние ВМ и оптимизировать их работу.

Целевая аудитория

Разработчики облаков

Тезисы

Каждый день в публичном облаке Yandex Cloud запускается огромное количество виртуальных машин (ВМ). В большинстве случаев на одном хосте одновременно существуют несколько ВМ, принадлежащих разным клиентам. В такой ситуации одной из задач провайдера облачных услуг является разделение ресурсов хоста между ВМ. Но позволяют ли современные процессоры на x86-64 архитектуре разделить и изолировать абсолютно всё?

Процессоры имеют внутренние ресурсы, которыми программист не имеет возможности управлять явно. Например, кэш и шина памяти. От их доступности может зависеть производительность приложений в ВМ. Но как понять, что производительность приложения снизилась именно из-за конкуренции ВМ за внутренние ресурсы процессора?

Этот доклад про увлекательное исследование в Yandex Cloud длиной в год, из которого вы узнаете о способах обнаружения проблем с производительностью приложений из-за конкуренции за кэш L3 и шину памяти.

Системный разработчик в Yandex Cloud. Занимаюсь разработкой ядра ОС и гипервизора для хостов. Отвечаю за взаимодействие с аппаратными особенностями.

Yandex Cloud

Мы строим публичную облачную платформу Yandex Cloud, чтобы дать компаниям доступ к технологиям и сервисам, которые проверены нагрузками Яндекса. Наши продукты — это масштабируемая инфраструктура, сервисы хранения данных, инструменты машинного обучения и средства разработки.

Видео