Hopp til hovedinnhold

Søndag 8. november

 Tilbake Hjemmelab 2 min 04.11

Apples Minions gjør ledige Mac-er til GPU-sky og kutter inferenskøen fra timer til minutter

onsdag 14. oktober · KI-generert · Kilde: Apple Machine Learning Research

Innholdet er KI-generert og kan inneholde feil. Sjekk originalkilden.

Bygg en inferenspool av ledige Mac-er med Ollama og PostgreSQL, viser Apple-forskerne bak Minions, og ventetiden på GPU-jobber går fra timer til minutter.

Over ti timer i kø var virkeligheten for enkelte inferensjobber hos Apple før forskerne begynte å låne de ledige GPU-ene i kollegenes Mac-er. Det skriver seks Apple-forskere, med Jianhua Li som førsteforfatter, i artikkelen «Minions: A Dynamic and Distributed Virtual GPU Cloud Built on Idle Apple Silicon Devices», lagt ut på arXiv 9. oktober og på Apple Machine Learning Research 12. oktober. Med Minions starter jobbene ifølge forfatterne ofte i løpet av minutter, uten nye GPU-innkjøp.

Systemet har fire deler: en Minion Server som deler jobber i deloppgaver, en PostgreSQL-database for metadata, executorer på hver Mac og en watchdog. Embeddings lages med Hugging Face transformers, mens LLM-completion kjører lokalt via Ollama. Input og output ligger i S3.

Poenget er hvor lite koordinering som trengs. Executorene henter selv deloppgaver over REST, og eierskapet avgjøres av en unik constraint i PostgreSQL: flere maskiner prøver å sette inn samme rad, og bare én lykkes. Det finnes ingen sentral scheduler.

«Feil hos executorene er forventet i dette miljøet, på grunn av faktorer som nettverkstap, dvale og avslåing.» — Jianhua Li m.fl., Apple

Executorene sender heartbeat hvert femte minutt. Stopper de, legger watchdogen deloppgaven tilbake i køen, så en laptop som lukkes bare blir en forsinkelse. Hvert team kan i tillegg peke sine egne maskiner mot ett bestemt prosjekt for å hoppe over FIFO-køen.

Artikkelen er en kort erfaringsrapport, ikke en benchmark. Den oppgir verken tokens per sekund eller antall maskiner, og den lenker ikke til kode. Forfatterne peker selv på datakonfidensialitet som det største hinderet for at kolleger vil delta, og løser det med egne databaser og executor-pooler per team.

Mønsteret lar seg likevel kopiere rett inn i en hjemmelab med to eller tre Mac-er som kjører Ollama: en jobbtabell i PostgreSQL, INSERT ... ON CONFLICT DO NOTHING som lås og heartbeats er nok til å fordele batch-jobber som embeddings uten Kubernetes eller Ray.

Pulsen · norske KI-nyheter for deg som bygger. Sakene er KI-generert fra originalkilden, som alltid lenkes.