Robocikowo>ROBOCIKOWO
Sztuczna Inteligencja

Apple zbiera bezczynne Maki w chmurę GPU. Kolejka z 10 godzin na minuty

Pan Robocik22 października 2026 · 3 min czytania
Apple zbiera bezczynne Maki w chmurę GPU. Kolejka z 10 godzin na minuty

Apple opublikowało w październiku opis Minions — wewnętrznego systemu, który zbiera bezczynne GPU w firmowych Makach z Apple Silicon w jedną rozproszoną chmurę do inferencji. Według pracy kolejki na centralne GPU sięgały wcześniej ponad dziesięciu godzin, a na Minions zadania startują w minutach.

Najważniejsze w skrócie

  • Zadania czekały ponad 10 godzin na centralne GPU, na Minions startują w minutach
  • Zero nowych zakupów GPU i zerowy koszt infrastruktury według tabeli wyników Apple
  • Cztery komponenty: Minion Server, baza PostgreSQL, Minion Executor i Minion Watchdog
  • Egzekutory raportują heartbeat co pięć minut, Watchdog śledzi tylko te liczące podzadania
  • Praca ma trzy strony, jeden rysunek i jedną tabelę — bez benchmarków przepustowości
10 h → minutyczas oczekiwania zadania na GPU: ponad dziesięć godzin w kolejce do centralnego klastra, minuty na bezczynnych MakachApple Machine Learning Research

Pull zamiast schedulera

Minions nie ma centralnego schedulera. Minion Server dzieli zadanie na podzadania i zapisuje je w PostgreSQL, a egzekutory na Makach same odpytują REST API o to, co mogą wziąć — to pull: Pracownik sam zgłasza się po zadanie, zamiast dostawać je przydzielone. Odporny na to, że część maszyn w każdej chwili jest offline., odwrotność klasycznego przydzielania zadań.

Wyłączność zapewnia jedno ograniczenie unikalności w tabeli minion_subtask_acquirement — przy wyścigu kilku egzekutorów dokładnie jeden INSERT przechodzi, pozostałe szukają innego podzadania.

Plaintext
-- wyścig egzekutorów o to samo podzadanie
INSERT INTO minion_subtask_acquirement (subtask_id, executor_id)
VALUES ('st-4711', 'mac-studio-07');
-- UNIQUE(subtask_id): pierwszy INSERT wygrywa,
-- pozostałe dostają błąd i szukają innego podzadania

Schemat poglądowy mechanizmu opisanego w pracy. Apple podaje nazwę tabeli i zasadę działania, nie pełny schemat bazy — powyższy zapis ilustruje regułę, a nie oryginalny kod.

Obsługiwane są dwa typy zadań: generowanie embeddingów modelami z Hugging Face Hub oraz generowanie uzupełnień tekstu modelem LLM przez Ollamę.

KomponentRola w systemie
Minion Serverprzyjmuje zadanie, dzieli je na podzadania, wystawia REST API
PostgreSQLkolejka i stan — siedem tabel, w tym ograniczenie unikalności na podzadaniu
Minion Executorproces na Macu: pobiera podzadanie i liczy je na lokalnym GPU
Minion Watchdogpilnuje heartbeatów i zwraca do kolejki podzadania martwych egzekutorów
Cztery komponenty Minions. Dane wejściowe i wyniki nie przechodzą przez serwer — idą przez S3.

Awaria egzekutora to norma, nie wyjątek

Model pull-owy bierze się z tego, że prywatne urządzenia są dostępne z przerwami: Mac idzie w sen, traci sieć albo właściciel odbiera mu zasoby. Watchdog śledzi tylko te egzekutory, które faktycznie liczą podzadanie, i zwalnia je do kolejki, gdy przestaną wysyłać heartbeat: Krótki sygnał „żyję" wysyłany w stałym rytmie. Jego brak jest jedyną przesłanką, po której system uznaje maszynę za martwą.. Dane i wyniki idą przez S3, nie przez serwer — to odcina duże transfery od warstwy koordynacji.

Zgłoszenie zadaniaweb UI lub API Minion Servera
Podział na podzadaniazapis w PostgreSQL, siedem tabel
Egzekutor pobiera podzadaniepull przez REST, atomowy INSERT
Inferencja na GPU Apple SiliconHugging Face transformers lub Ollama
Wynik w S3, status do serwerabrak heartbeatu → Watchdog zwraca podzadanie
Przepływ zadania w Minions, od zgłoszenia do zapisu wyniku w obiektowym magazynie.

Faktem są nazwy komponentów, liczba tabel i pięciominutowy heartbeat. Uproszczeniem jest jeden egzekutor — w praktyce o to samo podzadanie ściga się wiele maszyn.

Blokadą jest zaufanie, nie technika

Apple wprost pisze, co ogranicza adopcję: obawa o poufność danych liczonych na maszynach spoza własnej organizacji — nawet przy zadaniach wewnętrznych. Odpowiedzią są wdrożenia zamknięte w zespole lub organizacji, z osobną bazą danych i odizolowaną pulą egzekutorów.

Koordynacja bywa przy tym całkowicie nieformalna: ludzie proszą się na Slacku o uruchomienie egzekutora pod konkretny projekt.

Dlaczego to ważne?

Debata o mocy obliczeniowej dotyczy zwykle budowy nowych centrów danych, bo tam idą pieniądze i tam widać wzrost. Minions pokazuje tańszą ścieżkę, która nie wymaga ani jednego nowego zakupu — ale praca nie podaje przepustowości ani kosztu energii, więc z klastrem porównać się jej nie da. Prawdziwą przeszkodą zostaje zresztą nie wydajność, lecz zgoda zespołów na liczenie cudzych danych u siebie.

Co dalej?

  • Apple zapowiada rozszerzenie Minions z inferencji na rozproszony trening modeli
  • W pracy pojawia się pomysł federowania bezczynnych Maków między organizacjami — bez opisu mechanizmu bezpieczeństwa
  • Minions nie jest udostępniony publicznie i nie ma jeszcze niezależnej analizy ani kodu

Źródła

Udostępnij ten artykuł