FASTDECODE ist ein CPU-GPU-heterogenes System zum Servieren großer Sprachmodelle (LLMs). Es unterteilt das Transformer-Modell in zwei Teile mit unterschiedlichen Charakteristiken:
R-Teil: Speicherintensive Berechnungen im autoregressiven Teil des Modells, insbesondere der Zugriff auf den KV-Cache. Dieser Teil wird auf entfernten CPU-Knoten verarbeitet, um die aggregierte Speicherkapazität und -bandbreite zu nutzen.
S-Teil: Der Rest des Modells, der hauptsächlich aus vollverbundenen Schichten besteht. Dieser Teil wird auf der GPU verarbeitet, wobei der Batch deutlich vergrößert werden kann, da der KV-Cache nicht mehr im GPU-Speicher gehalten werden muss.
Um die Leistung des heterogenen Systems zu optimieren, adressiert FASTDECODE drei Herausforderungen:
Zeitliche Heterogenität der Workload: FASTDECODE verwendet einen sequenzbasierten Ladeausgleichsalgorithmus, um die Gesamtlänge der zu verarbeitenden Sequenzen stabil zu halten und beide Hardware-Typen optimal auszulasten.
Geräteübergreifende Heterogenität: FASTDECODE verwendet ein modellgesteuertes Ansatz, um die optimale Konfiguration von GPU und CPUs zu finden, basierend auf Profiling-Ergebnissen.
Effizienz der CPU-Verarbeitung: FASTDECODE nutzt gemischte Genauigkeit und Quantisierung, um die CPU-Leistung beim Verarbeiten des R-Teils zu optimieren.
Insgesamt erreicht FASTDECODE eine 1,88- bis 5,04-fache höhere Durchsatzrate im Vergleich zu bestehenden Systemen, bei akzeptabler Latenz.
To Another Language
from source content
arxiv.org
Thông tin chi tiết chính được chắt lọc từ
by Jiaao He,Jid... lúc arxiv.org 03-19-2024
https://arxiv.org/pdf/2403.11421.pdfYêu cầu sâu hơn