---
title: "Mobile Inference Frameworks: Overview for SmartRep"
title_ru: "Обзор фреймворков мобильного инференса для SmartRep"
authors: [various]
year: 2024
venue: "survey/reference"
venue_tier: "reference"
doi: "—"
tags: [edge, deployment, tflite, onnx, coreml, mnn, ncnn, executorch, qualcomm, frameworks]
relevance_to_smartrep: 5
direction: "🅲"
---

# Обзор фреймворков мобильного инференса

*Карточка-справочник: не одна статья, а сводка по фреймворкам для выбора в SmartRep.*

## Сравнительная таблица

| Фреймворк | Платформа | NPU | INT8 | INT4 | FP16 | Размер runtime | Основной таргет |
|---|---|---|---|---|---|---|---|
| TFLite | Android, iOS, Linux | Hexagon (via Delegate) | ✅ | ✅ | ✅ | ~1 MB | Android |
| ONNX Runtime Mobile | Android, iOS, Win | DirectML, NNAPI | ✅ | ✅ | ✅ | ~1.5 MB | Кроссплатформенный |
| CoreML | iOS, macOS | Apple ANE | ✅ | ✅ | ✅ | System | iPhone/iPad |
| MNN (Alibaba) | Android, iOS, Linux | NNAPI, Adreno | ✅ | ✅ | ✅ | ~400 KB | Android (Alibaba apps) |
| NCNN (Tencent) | Android, iOS, Linux | Vulkan | ✅ | ❌ | ✅ | ~700 KB | Android (games/apps) |
| PyTorch Mobile / ExecuTorch | Android, iOS | XNNPACK | ✅ | Experimental | ✅ | ~2 MB | Research → prod |
| Qualcomm AI Hub + SNPE | Snapdragon | HTP (Hexagon) | ✅ | ✅ | ✅ | SDK | Qualcomm SoC |

## Детальное описание каждого

### TensorFlow Lite

**Разработчик:** Google. **Документация:** tensorflow.org/lite.

Стандарт для Android ML. Формат `.tflite` — flatbuffer. Делегаты: GPU Delegate, NNAPI Delegate (Qualcomm Hexagon, MediaTek APU), EdgeTPU Delegate.

**Для SmartRep:**
- BlazePose, MoveNet уже поставляются как TFLite — zero-cost интеграция.
- INT8 PTQ: `tf.lite.TFLiteConverter` + representative dataset — 5 строк кода.
- Ограничение: custom ops для Mamba/SSM нужно регистрировать вручную.

### ONNX Runtime Mobile

**Разработчик:** Microsoft + community. **Документация:** onnxruntime.ai.

Универсальный кроссплатформенный runtime. Провайдеры: NNAPI, CoreML, TensorRT, CUDA. ORT Mobile — минимальный runtime без Python dependency.

**Для SmartRep:**
- Export из PyTorch → ONNX → ORT Mobile: стандартный путь для моделей обученных в PyTorch (MotionBERT, ViTPose).
- Execution providers автоматически выбирают NPU если доступен.
- Ограничение: некоторые attention паттерны требуют custom реализации.

### CoreML

**Разработчик:** Apple. **Документация:** developer.apple.com/documentation/coreml.

Системный фреймворк iOS/macOS. Использует Apple Neural Engine (ANE) на iPhone 8+. Форматы: `.mlmodel`, `.mlpackage`. Конвертация: `coremltools` (Python).

**Для SmartRep (iOS):**
- FastViT, MobileOne оптимизированы от Apple — работают через CoreML нативно.
- ANE даёт лучшую energy efficiency vs CPU (~10× при INT8).
- Ограничение: только Apple devices; экспорт из PyTorch через `coremltools.convert()`.

### MNN (Mobile Neural Network, Alibaba)

**Разработчик:** Alibaba. Репо: github.com/alibaba/MNN.

Очень лёгкий (~400KB) runtime с акцентом на минимальный footprint. Поддерживает Adreno GPU (Qualcomm) через OpenCL. Широко используется в Taobao, DingTalk.

**Для SmartRep:**
- Хороший выбор для resource-constrained Android (budget phones).
- INT8/FP16 работают хорошо для CNN backbone'ов.

### NCNN (Tencent)

**Разработчик:** Tencent. Репо: github.com/Tencent/ncnn.

Популярен в Chinese tech — WeChat использует NCNN для facial recognition. ARM Neon оптимизации. Vulkan backend для GPU. Нет нативного INT4.

**Для SmartRep:**
- BlazePose модели конвертируются через `ncnn-tools`.
- Хорошая производительность на mid-range Android (Qualcomm 600-series).

### PyTorch Mobile / ExecuTorch

**Разработчик:** Meta (Facebook). Репо: github.com/pytorch/executorch.

ExecuTorch — новый (2023) production-ready runtime, заменяет старый PyTorch Mobile. XNNPACK backend для CPU, Core ML delegate для iOS.

**Для SmartRep:**
- MotionBERT, ViTPose — PyTorch models — прямой export через `torch.export`.
- ExecuTorch activly developed — будет лучше поддерживать transformer ops.

### Qualcomm AI Hub + SNPE/QNN

**Разработчик:** Qualcomm. Документация: aihub.qualcomm.com.

Cloud-based platform для оптимизации и бенчмаркинга на Qualcomm SoC (Snapdragon 8 Gen 3, etc.). SNPE/QNN SDK для Hexagon DSP/HTP.

**Для SmartRep:**
- Snapdragon — доминирующий SoC на Android flagship и mid-range.
- Qualcomm AI Hub: upload model → instant benchmark на Snapdragon 8 Gen 3.
- INT8/INT4 для Hexagon HTP: лучшая энергоэффективность из всех.

## Рекомендация для SmartRep

| Таргет | Рекомендуемый фреймворк | Fallback |
|---|---|---|
| Android flagship (Snapdragon) | TFLite + Hexagon Delegate / QNN | ONNX RT + NNAPI |
| Android mid-range | TFLite + NNAPI | MNN / NCNN |
| iPhone (iOS) | CoreML + ANE | ONNX RT + CoreML EP |
| Jetson Orin Nano | ONNX RT + TensorRT | PyTorch ExecuTorch |
| Research / cross-platform | ONNX RT Mobile | PyTorch Mobile |

**Ключевой вывод для SmartRep:** конвертация модели в TFLite (Android) + CoreML (iOS) покрывает ~95% target устройств. ONNX — промежуточный формат для обеих конвертаций.

## Gap из _index.md

> "Pose estimation с pay-per-precision tradeoff на edge не стандартизирован: кто-то сравнивает на мобильной GPU, кто-то на CPU, кто-то на NPU — нет единого протокола."

**Ниша SmartRep:** разработать и опубликовать единый benchmarking protocol для fitness pose estimation pipeline (pose → angles → AQA) на стандартном наборе устройств:
- iPhone 13 Pro (ANE через CoreML)
- Samsung Galaxy S23 (Snapdragon 8 Gen 2 через QNN)
- Pixel 7 (Google Tensor через TFLite)
- Raspberry Pi 5 (embedded, NCNN)

Метрики: latency (ms), throughput (FPS), energy (mJ/frame), accuracy (MPJPE, AUROC).

## Цитата (BibTeX)

```bibtex
@misc{smartrep_frameworks_survey,
  title={Mobile Inference Frameworks: Reference Card for SmartRep Edge Deployment},
  note={Internal reference document, SmartRep project},
  year={2024}
}
```
