Transformer-Lite : Déploiement à haute efficacité de grands modèles de langage sur les GPU de téléphones mobiles
Transformer-Lite: High-efficiency Deployment of Large Language Models on Mobile Phone GPUs
March 29, 2024
Auteurs: Luchang Li, Sheng Qian, Jie Lu, Lunxi Yuan, Rui Wang, Qin Xie
cs.AI
Résumé
Le modèle de langage de grande taille (LLM) est largement utilisé pour des tâches telles que les assistants intelligents, la synthèse de texte, la traduction et le traitement multimodal sur les téléphones portables. Cependant, les méthodes actuelles de déploiement des LLM sur appareil maintiennent une vitesse d'inférence lente, ce qui entraîne une mauvaise expérience utilisateur. Pour faciliter un déploiement efficace des LLM sur les GPU des appareils, nous proposons quatre techniques d'optimisation : (a) une approche basée sur des expressions symboliques pour prendre en charge l'inférence de modèles à forme dynamique ; (b) des optimisations d'opérateurs et la définition de priorités d'exécution pour améliorer la vitesse d'inférence et réduire les ralentissements du téléphone ; (c) une méthode de quantification FP4 appelée M0E4 pour réduire la surcharge de déquantification ; (d) une technique basée sur les sous-tenseurs pour éliminer la nécessité de copier le cache KV après l'inférence du LLM. De plus, nous implémentons ces méthodes dans notre moteur d'inférence mobile, Transformer-Lite, qui est compatible avec les processeurs Qualcomm et MTK. Nous avons évalué les performances de Transformer-Lite en utilisant des LLM avec des architectures et des paramètres variés allant de 2B à 14B. Plus précisément, nous avons atteint des vitesses de préremplissage et de décodage de 121 token/s et 14 token/s pour ChatGLM2 6B, et de 330 token/s et 30 token/s pour le plus petit Gemma 2B, respectivement. Par rapport à FastLLM basé sur CPU et MLC-LLM basé sur GPU, notre moteur obtient une accélération de plus de 10x pour la vitesse de préremplissage et de 2 à 3x pour la vitesse de décodage.
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