Optimización del Rendimiento de Inferencia para Modelos de Lenguaje Grandes en CPUs
Inference Performance Optimization for Large Language Models on CPUs
July 10, 2024
Autores: Pujiang He, Shan Zhou, Wenhuan Huang, Changqing Li, Duyi Wang, Bin Guo, Chen Meng, Sheng Gui, Weifei Yu, Yi Xie
cs.AI
Resumen
Los modelos de lenguaje de gran escala (LLMs) han demostrado un rendimiento excepcional y un vasto potencial en diversas tareas. Sin embargo, la implementación de LLMs con alto rendimiento en entornos de recursos limitados ha suscitado una atención significativa en la industria. Cuando los recursos de hardware de GPU son limitados, podemos explorar opciones alternativas en CPUs. Para mitigar la carga financiera y aliviar las restricciones impuestas por los recursos de hardware, es necesario optimizar el rendimiento de inferencia. En este documento, presentamos una solución de optimización de rendimiento de inferencia fácilmente desplegable destinada a acelerar LLMs en CPUs. En esta solución, implementamos una forma efectiva de reducir el tamaño de la caché KV mientras se garantiza la precisión. Proponemos un enfoque de optimización de inferencia distribuida e implementamos basándonos en la Biblioteca de Comunicaciones Colectivas oneAPI. Además, proponemos enfoques de optimización para LLMs en CPU y realizamos optimizaciones personalizadas para los modelos más comúnmente utilizados. El código está disponible en https://github.com/intel/xFasterTransformer.
English
Large language models (LLMs) have shown exceptional performance and vast
potential across diverse tasks. However, the deployment of LLMs with high
performance in low-resource environments has garnered significant attention in
the industry. When GPU hardware resources are limited, we can explore
alternative options on CPUs. To mitigate the financial burden and alleviate
constraints imposed by hardware resources, optimizing inference performance is
necessary. In this paper, we introduce an easily deployable inference
performance optimization solution aimed at accelerating LLMs on CPUs. In this
solution, we implement an effective way to reduce the KV cache size while
ensuring precision. We propose a distributed inference optimization approach
and implement it based on oneAPI Collective Communications Library.
Furthermore, we propose optimization approaches for LLMs on CPU, and conduct
tailored optimizations for the most commonly used models. The code is
open-sourced at https://github.com/intel/xFasterTransformer.Summary
AI-Generated Summary