Как Яндекс профилирует память миллионов колонок с Алисой: борьба за 256 МБ
Яндекс рассказал, как борется за память на умных колонках с Алисой: у младших моделей всего 256 МБ оперативки на всё устройство сразу. Команда, которая пишет код на C/C++ для колонок, телевизоров и автомобилей, построила инструмент семплирующего профилирования и ежедневно собирает дампы памяти с миллионов устройств в проде — чтобы точно знать, куда уходит каждый мегабайт: на бизнес-логику, обработку звука или локальные нейросети.
AI-обработка оригинала Habr: Яндекс; редакция Hamidun News
Команда Яндекса, которая пишет прикладной код на C/C++ для умных устройств с Алисой, в июле 2026 года рассказала, как построила инструмент семплирующего профилирования памяти и ежедневно собирает memory-дампы с миллионов колонок в проде. Повод для борьбы простой: у младших моделей колонок всего 256 МБ оперативной памяти на всё устройство сразу.
Почему память — главный дефицит
У младших умных колонок с Алисой всего 256 МБ оперативной памяти на всё устройство — и этот объём приходится делить одновременно между бизнес-логикой, обработкой звука и локальными нейросетями. По данным команды Яндекса, за каждый мегабайт идёт настоящая конкуренция между компонентами: то, что один модуль занял лишнего, второму уже недоступно.
В отличие от серверов, где память можно докупить, умная колонка — это фиксированное дешёвое железо. Разработчик не может «просто добавить ещё гигабайт»: объём зашит в устройство, которое уже стоит у пользователя дома. Поэтому вопрос «куда уходят мегабайты» здесь не абстрактный, а определяет, какие функции вообще влезут в устройство.
- 256 МБ оперативной памяти у младших моделей колонок — на всё устройство сразу
- Memory-дампы собираются ежедневно с миллионов колонок
- Прикладной код устройств написан на C/C++
- Одна платформа обслуживает не только колонки, но и телевизоры и автомобили с Алисой
- Флот устройств работает на Linux
Зачем профилировать память в проде?
Профилирование именно в проде нужно Яндексу, чтобы видеть реальное потребление памяти на живых устройствах пользователей, а не усреднённую картину с тестового стенда. Лабораторный сценарий редко воспроизводит то, как колонка ведёт себя дни и недели подряд в настоящей квартире, с настоящими запросами к Алисе.
Ключ к масштабу — слово «семплирующее». Полный дамп и детальный трейсинг каждого выделения памяти на слабом железе с 256 МБ съели бы часть тех самых ресурсов, которые пытаются измерить. Семплирующий подход снимает данные выборочно и с низкими накладными расходами, поэтому его можно держать включённым на миллионах устройств одновременно, не мешая работе колонки.
Миллионы источников дают статистику, которую невозможно получить на одном стенде: команда видит не единичный случай, а распределение — какие компоненты стабильно съедают память по всему флоту, а какие протекают лишь в редких сценариях.
«За каждый мегабайт идёт настоящая борьба между множеством команд и компонентов: бизнес-логикой, обработкой звука, локальными нейросетями», —
Сергей, разработчик команды умных устройств Яндекса, в блоге компании на Habr.
Что это значит
По мере того как на устройства переезжают локальные нейросети, память становится таким же критичным ресурсом, как раньше — вычислительная мощность. Кейс Яндекса показывает: чтобы уместить голосового ассистента и on-device модели в 256 МБ, недостаточно писать аккуратный код — нужен инструмент, который постоянно измеряет реальное потребление на всём парке устройств в проде.
Хотите не читать про ИИ, а внедрить его?
«AI News» — это полезные новости из мира ИИ. Системно научиться работать с нейросетями и применять их в работе — в Hamidun Academy.
Главное из мира ИИ — раз в неделю
7 ключевых событий недели, отобранных вручную. Без шума, репостов и пресс-релизов.
Готово! Проверьте почту — мы отправили подтверждение.