Cascade: Exploiting SLO-Aware latency budget for fair and high goodput LLM inference serving
Cascade is een LLM-serving systeem dat een dynamisch, per verzoek bepaald latentiebudget benut om scheduling en KV-cachebeheer gezamenlijk te optimaliseren, waardoor de SLO-voldoende goodput en eerlijkheid aanzienlijk worden verbeterd terwijl schendingen worden verminderd in vergelijking met traditionele first-come-first-served-benaderingen.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je een bruisend, razendsnel treinstation voor waar duizenden passagiers tegelijkertijd probeert in te stappen in verschillende treinen. Sommige passagiers hebben slechts een kleine rugzak (een korte, snelle vraag), terwijl anderen enorme, zware koffers voortslepen vol met jaren aan herinneringen (een lang, complex verhaal of een diepe redeneringstaak). In de wereld van Kunstmatige Intelligentie zijn deze "treinen" Large Language Models (LLM's) — de superintelligente computers die chatbots, programmeerassistenten en redeneeragenten aandrijven. De "passagiers" zijn de verzoeken die we naar hen sturen.
Om deze systemen snel en behulpzaam te laten aanvoelen, moeten ze beloven antwoorden te leveren binnen een specifieke tijdslimiet, bekend als een Service Level Objective (SLO). Denk hierbij aan een ticket waarop staat: "U moet binnen 5 seconden aan boord zijn en in beweging zijn." Het probleem is dat de stationsmanagers een zeer oude regel hebben gebruikt: "Wie het eerst komt, het eerst maalt." Dit betekent dat als een passagier met een gigantische koffer als eerste arriveert, iedereen erachter moet wachten, zelfs als de persoon daarachter alleen een kleine rugzak heeft en in een fractie van een seconde geholpen zou kunnen worden. Dit veroorzaakt een enorme verkeersopstopping. Bovs wordt de stationmanager ook geconfronteerd met een beperkte hoeveelheid hoogwaardige opslag (zoals een VIP-wachtkamer) voor de bagage van de passagiers. Als de bagage in een traag, afgelegen magazijn wordt opgeslagen, duurt het ophalen ervan tijd. Als de stationmanager niet weet hoeveel tijd elke passagier nog heeft voordat hun trein vertrekt, kan hij kostbare seconden verspillen aan het ophalen van bagage voor iemand die al te laat is, terwijl iemand anders die wel op tijd is, achterblijft.
Dit is de uitdaging waar een nieuw systeem genaamd CASCADE een oplossing voor biedt, beschreven in een recent artikel door onderzoekers van de University of British Columbia, Microsoft Azure Research en NVIDIA. De onderzoekers realiseerden zich dat elk verzoek een verborgen "tijdbudget" heeft: het verschil tussen de tijd die het nodig heeft om zijn taak te voltooien en de tijd die het mag kosten. Sommige verzoeken hebben een enorm budget (veel extra tijd), terwijl andere bijna niets hebben. Het artikel betoogt dat in plaats van alleen te kijken naar wie het eerst arriveerde of hoe groot het verzoek is, het systeem naar dit resterende tijdbudget zou moeten kijken om te beslissen wie de volgende is en hoe hun gegevens beheerd moeten worden.
De kern van CASCADE is het behandelen van dit tijdbudget als een gedeelde valuta voor twee verschillende taken: het bepalen van de volgorde van verzoeken en het beheren van de locatie van hun gegevens. In de simulaties in het artikel, die gebruikmaakten van echte verkeersgegevens van productieservers en werden getest op drie verschillende gigantische AI-modellen (Qwen-2.5-72B, Llama-3-70B en Llama-3-405B), toonde CASCADE indrukwekkende resultaten. Door constant te berekenen hoeveel "tijdspeling" (time headroom) elk verzoek nog had, kon CASCADE de verzoeken die bijna zonder tijd zaten prioriteit geven, terwijl verzoeken met voldoende tijd iets langer konden wachten of hun gegevens uit tragere, goedkopere opslag konden halen.
De bevindingen suggereren dat deze aanpak een gamechanger is voor efficiëntie. In hun tests verbeterde CASCADE het aantal succesvolle verzoeken dat het systeem kon afhandelen (de zogenaamde "goodput") met wel 2,4 keer vergeleken met de standaard "wie het eerst komt, het eerst maalt"-methode die door populaire systemen zoals vLLM wordt gebruikt. Belangrijker nog, het verminderde het aantal verzoeken dat hun tijdslimieten miste (SLO-schendingen) met 40%. Misschien wel het meest creatieve aspect is dat het dit deed zonder dat lange, complexe verzoeken eronder leden. In tegen tegenstelling tot andere methoden die korte verzoeken wellicht haasten en lange verzoeken benadelen, hield CASCADE de ervaring eerlijk voor iedereen, waardoor zowel de "rugzak"- als de "gigantische koffer"-passagiers op tijd werden bediend. Het systeem bereikte dit door dynamisch te beslissen of gegevens uit het snelle geheugen moesten worden opgehaald, uit tragere opslag, of simpelweg opnieuw berekend moesten worden, gebaseerd op of dat specifieke verzoek genoeg tijdbudget had om de vertraging op te vangen.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.