Meerdere lokale modellen kunnen één accelerator delen wanneer de servinglaag het resident houden van gewichten, dynamisch geheugen, uitvoeringstijd en verzoekisolatie tussen workloads coördineert.
Een thuis-GPU kan afwisselen tussen een chatmodel, een embeddingmodel, een vision-encoder en spraakherkenning. Als elke gewichtenset permanent wordt geladen, kan het VRAM-geheugen vollopen, terwijl het bij elk verzoek uitladen de latentie tot het eerste token onvoorspelbaar maakt. Een controller voor meerdere modellen heeft daarom een residentiebeleid, geheugenboekhouding tussen modellen, planning, cache-isolatie, preëmptie en eerlijkheid nodig, in plaats van afzonderlijke processen blind met elkaar te laten concurreren.
Het residentiebeleid bepaalt welke gewichten warm blijven
De controller houdt de modelgrootte, aankomstsnelheid, laadtijd, latentie- doelstelling en recent gebruik bij. Populaire modellen blijven resident, weinig gebruikte modellen nemen CPU- of opslagruimte in beslag en voorspelde vraag kan ervoor zorgen dat een model vooraf wordt opgewarmd voordat het volgende verzoek de accelerator bereikt.
voorverwarmen voor meerdere modellen maakt universele GPU-workers klaar voor meerdere modellen en coördineert het voorverwarmen met plaatsing die rekening houdt met uitzetting. De resultaten laten zien waarom het vermijden van een koude lading de tijd tot het eerste token bij voorspelbare vraag sterk kan verbeteren. Dit onderscheid blijft zichtbaar tijdens latere tests in huishoudelijke omstandigheden.
Bij beslissingen over residentie moet rekening worden gehouden met kwantisering en adaptervarianten, omdat twee ogenschijnlijk vergelijkbare endpoints verschillende basisgewichten kunnen bevatten. Een strikt geheugenbudget voorkomt dat proactief laden de KV-cache van actieve verzoeken verdringt. Het tussenresultaat moet inspecteerbaar blijven voordat automatisering erop voortbouwt.
Geheugencoördinatie tussen modellen voorkomt gefragmenteerde capaciteit
Gewichten blijven grotendeels stabiel, terwijl activaties en KV-caches groeien met batchgrootte en sequentielengte. Een gedeelde allocator kan geheugenpagina's op aanvraag toewijzen, inactieve regio's terugwinnen en reserveringen beschikbaar stellen, zodat één model geen ruimte kan verbruiken die aan een ander is toegezegd.
geheugencoördinatie tussen modellen introduceert geheugencoördinatie tussen modellen met dynamische toewijzing van virtuele aan fysieke pagina's en beleid voor delen tijdens runtime. Het ontwerp verklaart waarom GPU-deling op procesniveau niet goed kan reageren op snel veranderende modelvraag. Die grens moet afzonderlijk worden gemeten onder realistische gebruiksomstandigheden.
Geheugen delen betekent niet dat gegevens worden gedeeld. KV-cacheblokken, prefix-caches, tijdelijke buffers en adapterstatus vereisen tenant- en modelidentificatie; anders kan een hergebruikte pagina of cachesleutel context lekken of resultaten tussen endpoints beschadigen.
Planning en adaptermultiplexing sturen de uitvoeringstijd
Een scheduler kiest tussen ruimtelijk delen, waarbij modellen gezamenlijk geheugen bezetten, en temporeel delen, waarbij kernels om de beurt worden uitgevoerd. Continue batching verbetert de doorvoer, terwijl preëmptie en gewogen wachtrijen een interactief verzoek beschermen tegen een lange achtergrondtaak.
adaptermultiplexing bedient duizenden low-rank-adapters bovenop gedeelde basismodellen door adaptergewichten via paging te laden en heterogene batches te coördineren. Dit laat zien hoe specialisatie meer status kan delen dan volledig afzonderlijke modelreplica's. Het praktische gevolg wordt zichtbaar wanneer meerdere bronnen concurreren om beperkte context.
De storingsgrens ligt bij kernel- en geheugeninterferentie. Twee modellen die gelijktijdig passen, kunnen hun latentiedoelen nog steeds missen wanneer ze concurreren om rekenkracht, bandbreedte of kopieerengines. Delen is alleen nuttig wanneer de p95-latentie en eerlijkheid per model binnen het beleid blijven, niet wanneer de totale benutting er alleen hoog uitziet.
Maak een interferentiematrix voor het delen van modellen
Meet elk model afzonderlijk en voer daarna elk belangrijk paar uit, evenals de verwachte mix van vier modellen met korte, lange, bursty- en achtergrondverzoeken. Leg de tijd voor koud laden, resident geheugen, KV-groei, kernelbenutting, doorvoer, p50- en p95-latentie en uitzettingen vast.
Gebruik het principe van de gerouteerde stack uit gerouteerde modelresidentie om aan elk endpoint een prioriteit en residentieklasse toe te wijzen. Herhaal dit met adapters, gekwantiseerde varianten, continue batching en preëmptie, en controleer daarbij of caches en verzoekidentiteiten geïsoleerd blijven.
Handhaaf een deelbeleid alleen wanneer belangrijke interactieve modellen tijdens de slechtst verwachte mix hun latentiedoel halen. Als één paar herhaaldelijk thrashing veroorzaakt, serializeer dat paar dan of reserveer een tijdvenster, in plaats van de gelijktijdigheid te verhogen voor een mooier benuttingsdiagram.
Tech & AI HUB
Meer om te lezen

Welke functies maken een vertrouwensgrens voor thuis-AI rond gevoelige bestanden mogelijk?
Ontdek hoe classificatie, toegangsbeheer op basis van mogelijkheden, geïsoleerde parsing, ophaalfilters, egressbeleid, goedkeuringen en audits gevoelige bestanden thuis afschermen.

Welke factoren bepalen of back-ups met Merkle-bomen stille wijzigingen efficiënt detecteren?
Leer hoe chunkgrootte, fan-out, vertrouwde basissen, gecachte hashes, wijzigingslokaliteit, metadatabereik en scrubbing de verificatiekosten van Merkle-back-ups bepalen.

Welke componenten maken verifieerbare back-ups van AI-indexen en modelstatus mogelijk?
Ontdek hoe gecoördineerde snapshots, contentmanifesten, checksums, versievergrendelingen, hersteltests en querytests aantonen dat de AI-status daadwerkelijk kan worden hersteld.

