Transformer-Lite: Высокоэффективное развертывание больших языковых моделей на графических процессорах мобильных телефонов
Transformer-Lite: High-efficiency Deployment of Large Language Models on Mobile Phone GPUs
March 29, 2024
Авторы: Luchang Li, Sheng Qian, Jie Lu, Lunxi Yuan, Rui Wang, Qin Xie
cs.AI
Аннотация
Большая языковая модель (LLM) широко используется для задач, таких как интеллектуальные помощники, суммирование текста, перевод и мультимодальность на мобильных телефонах. Однако текущие методы развертывания LLM на устройствах поддерживают медленную скорость вывода, что приводит к плохому пользовательскому опыту. Для облегчения высокоэффективного развертывания LLM на графических процессорах устройств мы предлагаем четыре техники оптимизации: (a) подход на основе символьных выражений для поддержки вывода модели динамической формы; (b) оптимизации операторов и установка приоритета выполнения для увеличения скорости вывода и снижения задержек на телефоне; (c) метод квантования FP4, названный M0E4, для снижения накладных расходов на деквантование; (d) техника на основе подтензоров для устранения необходимости копирования кэша KV после вывода LLM. Более того, мы реализуем эти методы в нашем мобильном движке вывода, Transformer-Lite, который совместим как с процессорами Qualcomm, так и с MTK. Мы оценили производительность Transformer-Lite с использованием LLM с различными архитектурами и параметрами от 2B до 14B. В частности, мы достигли скоростей предварительной загрузки и декодирования 121 токен/с и 14 токен/с для ChatGLM2 6B, и 330 токен/с и 30 токен/с для более маленькой Gemma 2B, соответственно. По сравнению с CPU-ориентированным FastLLM и GPU-ориентированным MLC-LLM, наш движок достигает более чем в 10 раз ускорения скорости предварительной загрузки и в 2-3 раза ускорения скорости декодирования.
English
The Large Language Model (LLM) is widely employed for tasks such as
intelligent assistants, text summarization, translation, and multi-modality on
mobile phones. However, the current methods for on-device LLM deployment
maintain slow inference speed, which causes poor user experience. To facilitate
high-efficiency LLM deployment on device GPUs, we propose four optimization
techniques: (a) a symbolic expression-based approach to support dynamic shape
model inference; (b) operator optimizations and execution priority setting to
enhance inference speed and reduce phone lagging; (c) an FP4 quantization
method termed M0E4 to reduce dequantization overhead; (d) a sub-tensor-based
technique to eliminate the need for copying KV cache after LLM inference.
Furthermore, we implement these methods in our mobile inference engine,
Transformer-Lite, which is compatible with both Qualcomm and MTK processors. We
evaluated Transformer-Lite's performance using LLMs with varied architectures
and parameters ranging from 2B to 14B. Specifically, we achieved prefill and
decoding speeds of 121 token/s and 14 token/s for ChatGLM2 6B, and 330 token/s
and 30 token/s for smaller Gemma 2B, respectively. Compared with CPU-based
FastLLM and GPU-based MLC-LLM, our engine attains over 10x speedup for the
prefill speed and 2~3x speedup for the decoding speed.Summary
AI-Generated Summary