Современные мобильные и периферийные устройства оснащены специализированными графическими процессорами (GPU) и нейронными процессорами (NPU), способными ускорять работу моделей искусственного интеллекта до 25 раз по сравнению с центральным процессором (CPU), одновременно снижая энергопотребление до 5 раз.
LiteRT упрощает доступ к этим специализированным микросхемам благодаря унифицированному стеку аппаратного ускорения. Вместо управления фрагментированными SDK от разных поставщиков или сложными аппаратными API, LiteRT предоставляет упрощенный API CompiledModel , который абстрагирует сложность оптимизации моделей, управления памятью и распределения аппаратных ресурсов.
Типы ускорителей
LiteRT предоставляет унифицированный интерфейс для выполнения моделей на различных аппаратных платформах. Используя API CompiledModel, вы можете беспрепятственно переключаться между этими ускорителями, используя компиляцию на устройстве или компиляцию на этапе предварительной обработки (AOT), с автоматическим переключением на ЦП для неподдерживаемых операций.
- ЦП: путь выполнения по умолчанию с использованием XNNPACK, всегда доступен. Отлично подходит для общих задач и в качестве резервного варианта для неподдерживаемых операторов.
- GPU: на базе ML Drift обеспечивает высочайшую производительность на периферийных платформах, используя OpenCL, WebGPU, Metal и т. д. Для получения дополнительной информации см. раздел «Ускорение GPU с помощью LiteRT».
- NPU: высочайшая эффективность и производительность для задач искусственного интеллекта. LiteRT предлагает единый процесс разработки для доступа к специализированным чипсетам NPU, включая Google Tensor, Qualcomm и MediaTek, без необходимости интеграции SDK от конкретного производителя. Для получения дополнительной информации см. раздел «Ускорение NPU с помощью LiteRT».
Эти ускорители можно комбинировать для достижения максимально возможной производительности, когда некоторые сложные операции недоступны на данном оборудовании. Когда ускорители конкурируют за выполнение операции, LiteRT использует следующий порядок приоритета: NPU, GPU, CPU .