Fiddler: CPU-GPU Coördinatie voor Snelle Inferentie van Mixture-of-Experts Modellen
Fiddler: CPU-GPU Orchestration for Fast Inference of Mixture-of-Experts Models
February 10, 2024
Auteurs: Keisuke Kamahori, Yile Gu, Kan Zhu, Baris Kasikci
cs.AI
Samenvatting
Large Language Models (LLMs) gebaseerd op de Mixture-of-Experts (MoE)-architectuur laten veelbelovende prestaties zien bij diverse taken. Het uitvoeren van deze modellen in omgevingen met beperkte resources, waar GPU-geheugen niet ruim beschikbaar is, is echter een uitdaging vanwege de enorme modelgroottes. Bestaande systemen die modelgewichten naar het CPU-geheugen offloaden, kampen met een aanzienlijke overhead door het frequente verplaatsen van data tussen de CPU en GPU. In dit artikel stellen we Fiddler voor, een resource-efficiënte inference-engine met CPU-GPU-coördinatie voor MoE-modellen. De kern van Fiddler is het gebruik van de rekenkracht van de CPU om de dataverplaatsing tussen de CPU en GPU te minimaliseren. Onze evaluatie toont aan dat Fiddler het ongecomprimeerde Mixtral-8x7B-model, dat meer dan 90GB aan parameters bevat, kan uitvoeren om meer dan 3 tokens per seconde te genereren op een enkele GPU met 24GB geheugen, wat een verbetering van een orde van grootte laat zien ten opzichte van bestaande methoden. De code van Fiddler is publiek beschikbaar op https://github.com/efeslab/fiddler.
English
Large Language Models (LLMs) based on Mixture-of-Experts (MoE) architecture
are showing promising performance on various tasks. However, running them on
resource-constrained settings, where GPU memory resources are not abundant, is
challenging due to huge model sizes. Existing systems that offload model
weights to CPU memory suffer from the significant overhead of frequently moving
data between CPU and GPU. In this paper, we propose Fiddler, a
resource-efficient inference engine with CPU-GPU orchestration for MoE models.
The key idea of Fiddler is to use the computation ability of the CPU to
minimize the data movement between the CPU and GPU. Our evaluation shows that
Fiddler can run the uncompressed Mixtral-8x7B model, which exceeds 90GB in
parameters, to generate over 3 tokens per second on a single GPU with 24GB
memory, showing an order of magnitude improvement over existing methods. The
code of Fiddler is publicly available at
https://github.com/efeslab/fiddler