Hardware optimization on Android for inference of AI models
Gherasim, Sánchez
The pervasive integration of Artificial Intelligence models into contemporary mobile computing is notable across numerous use cases, from virtual assistants to advanced image processing. Optimizing the mobile user experience involves minimal latency and high responsiveness from deployed AI models with challenges from execution strategies that fully leverage real time constraints to the exploitation of heterogeneous hardware architecture. In this paper, we research and propose the optimal execution configurations for AI models on an Android system, focusing on two critical tasks: object detection (YOLO family) and image classification (ResNet). These configurations evaluate various model quantization schemes and the utilization of on device accelerators, specifically the GPU and NPU. Our core objective is to empirically determine the combination that achieves the best trade-off between minimal accuracy degradation and maximal inference speed-up.
academic
Аппаратная оптимизация на Android для вывода моделей ИИ
В данной работе исследуется проблема аппаратной оптимизации вывода моделей ИИ на системах Android. Учитывая повсеместную интеграцию моделей ИИ в мобильные вычисления (от виртуальных помощников до продвинутой обработки изображений), исследователи сосредоточились на двух ключевых задачах: обнаружении объектов (семейство YOLO) и классификации изображений (ResNet). Путём оценки различных схем квантования моделей и использования ускорителей устройства (GPU и NPU), основная цель работы состоит в эмпирическом определении оптимальной комбинации конфигураций, обеспечивающей лучший компромисс между минимальной потерей точности и максимальным ускорением вывода.
С широким распространением моделей ИИ на мобильных устройствах ключевым вызовом становится достижение низкой задержки и высокой отзывчивости вывода при сохранении точности модели. Конкретно это включает:
Как полностью использовать гетерогенную архитектуру аппаратного обеспечения мобильных устройств (CPU, GPU, NPU)
Как выбрать подходящую схему квантования модели для балансировки точности и скорости
Как оптимизировать конфигурацию выполнения для различных задач ИИ (классификация vs обнаружение)
Энергопотребление: Google оценивает, что в 2019-2021 гг. задачи, связанные с ИИ, составляли 10-15% от общего энергопотребления, при этом этап вывода потреблял 60% энергии; Meta сообщает, что вывод составляет 70% энергопотребления ИИ
Тенденция роста: ежегодный рост энергопотребления Google составляет 21%, а Meta достигает 32%
Пользовательский опыт: производительность мобильного ИИ стала ключевым дифференциатором, требующим соответствия строгим требованиям к реальному времени и точности
Систематическая оценка аппаратного обеспечения: первая систематическая оценка производительности трёх вычислительных блоков (CPU, GPU, NPU) на коммерческом устройстве Android (Samsung Galaxy Tab S9) для задач вывода ИИ
Анализ схем квантования: всесторонний анализ семи схем квантования (FP32, FP16, INT8, INT16, FINT8, FINT16, Dynamic) на различном аппаратном обеспечении с точки зрения компромисса точность-скорость
Рекомендации по оптимизации для конкретных задач:
Для задачи классификации ResNet: NPU + квантование INT8 обеспечивает ускорение в 130 раз с потерей точности <3%
Для задачи обнаружения YOLO: NPU + квантование FP16 является оптимальным, избегая потери точности в 6,5 mAP при INT8
Анализ фронта Парето: предоставление многокритериальной оптимизации, определяющей оптимальные точки компромисса для различных конфигураций в пространстве точность-задержка
Практические выводы:
NPU показывает лучшую производительность во всех конфигурациях, достигая максимального ускорения в 298 раз (YOLOv8x)
Динамическое квантование на NPU не работает, выявляя проблемы совместимости аппаратного обеспечения
Масштабируемость многопоточности CPU ограничена (максимум 3,4×), что объясняется асимметричной архитектурой ядер
Данное исследование сосредоточено на двух основных задачах компьютерного зрения:
Классификация изображений: входные данные - одно изображение, выходные данные - метка класса и уверенность (используется семейство ResNet)
Обнаружение объектов: входные данные - одно изображение, выходные данные - несколько ограничивающих рамок, классы и уверенность (используется семейство YOLO)
Цель состоит в поиске оптимальной комбинации конфигурации аппаратного обеспечения и схемы квантования на мобильном устройстве Android.
В данном исследовании оценивались семь конфигураций квантования (см. таблицу II):
Название схемы
Тип данных I/O
Точность операций
Активации
Веса
FP32
FP32
FP32
FP32
FP32
FP16
FP32
FP32
FP32
FP16
INT8
FP32
INT8
INT8
INT8
INT16
FP32
INT8
INT16
INT16
FINT8
INT8
INT8
INT8
INT8
FINT16
INT16
INT8
INT16
INT16
DYN
FP32
Смешанная
FP32
Смешанная
Ключевые технические моменты:
Статическое квантование: веса преобразуются в целевой тип данных (например, INT8) в автономном режиме и хранятся в фиксированном виде
Динамическое квантование (DYN): веса хранятся как 8-битные, но значения активации квантуются во время выполнения, что вводит накладные расходы во время выполнения, но лучше сохраняет точность
Ограничение INT16: LiteRT не имеет оптимизированной реализации ядер INT16, что приводит к крайне плохой производительности
Гибридный подход к фреймворкам: учитывая ограничения совместимости программного обеспечения, применяется гибридная схема LiteRT Next (CPU/GPU) и стандартного LiteRT (NPU), обеспечивающая полную оценку
Систематическое исследование пространства конфигураций:
3 типа аппаратного обеспечения × 7 схем квантования × несколько размеров моделей
Охватывает 5 вариантов ResNet (18/34/50/101/152)
Охватывает 5 вариантов YOLOv8 (n/s/m/l/x)
Охватывает 5 вариантов YOLO11 (n/s/m/l/x)
Перспектива многокритериальной оптимизации: не стремление к единственному оптимуму, а предоставление фронта Парето компромисса точность-задержка, поддерживающего многокритериальное принятие решений
Количественная оценка потерь при преобразовании фреймворка: явное измерение потери точности, вводимой преобразованием PyTorch в LiteRT (ResNet: 0,83-1,77%; YOLO11: 0,2-0,4 mAP)
Тестирование MLPerf: данная работа применяет принципы MLPerf для оценки систем вывода ML, от встроенных устройств до центров обработки данных, обеспечивая оценку, независимую от программного фреймворка и архитектуры
Эволюция мобильных фреймворков ИИ:
PyTorch, ONNX, TensorFlow: универсальные фреймворки разработки ИИ
TensorFlow Lite → LiteRT: облегчённая среда выполнения для мобильных устройств
LiteRT Next: встроенная поддержка разгрузки на ускорители
Парадигмы гетерогенных вычислений:
Модель Edge-to-Cloud: локальная обработка на границе оптимизирует задержку, сложные задачи разгружаются в облако
DSA (Domain-Specific Architecture): NPU как специализированный ускоритель тензорных операций
Технологии квантования:
Квантование после обучения (применяется в данной работе)
Систематическая оценка: первая всесторонняя оценка трёх типов аппаратного обеспечения (CPU/GPU/NPU) на коммерческом устройстве Android
Эмпирические рекомендации: предоставление конкретных рекомендаций по конфигурации для различных задач, а не теоретический анализ
Перспектива Парето: метод многокритериальной оптимизации, раскрывающий пространство компромисса точность-скорость
Выявление проблем: идентификация проблем совместимости динамического квантования с NPU, ограничений масштабируемости CPU и других практических проблем развёртывания
Промышленная релевантность: использование стандартных моделей MLPerf, результаты напрямую применимы к производственной среде
NPU - оптимальное устройство выполнения: обеспечивает ускорение до 120× по сравнению с базовой линией CPU с одним ядром, подтверждая его критическую роль в низколатентном граничном ИИ
Оптимальное квантование - это проблема компромисса:
ResNet: INT8 оптимален, выигрыш в скорости на NPU превосходит потерю точности
Тестирование MLPerf: Reddi et al. (2020) - "MLPerf inference benchmark", определяет принципы оценки, применённые в данной работе
Исследования энергопотребления:
Отчёт об окружающей среде Google (2023): ИИ составляет 10-15% энергопотребления
Отчёт об устойчивости Meta (2023): вывод составляет 70% энергопотребления ИИ
ResNet: He et al. (2016) - "Deep Residual Learning for Image Recognition", чемпион ILSVRC 2015
YOLO: Ramos & Sappa (2025) - "A decade of you only look once (yolo) for object detection: A review"
Edge-to-Cloud: Moreschini et al. (2024) - "Edge to cloud tools: A multivocal literature review"
Общая оценка: это солидная эмпирическая исследовательская работа, предоставляющая ценные рекомендации по конфигурации для оптимизации вывода мобильного ИИ. Основные преимущества заключаются в систематическом дизайне экспериментов и детальных количественных результатах, чётко раскрывающих преимущества NPU и стратегии квантования, специфичные для задач. Основные недостатки - ограниченная обобщаемость на единую аппаратную платформу и отсутствие анализа энергопотребления. Работа имеет высокую справочную ценность для разработчиков приложений Android и исследователей граничного ИИ, однако выводы требуют проверки на более широком диапазоне аппаратного обеспечения и задач. Рекомендуется дополнить измерениями энергопотребления, расширить на другие платформы и задачи, а также открыть исходный код экспериментов для повышения воспроизводимости.