Twój MacBook jest szybki przez dwie minuty, potem o połowę wolniejszy
tok/s spada o połowę po długim prompcie
Autor Jakub Rusinowski
Błąd
minute 1: 42.6 tok/s minute 10: 19.8 tok/s <- same model, same prompt, same machine
| Jeśli widzisz | Przyczyną jest | Przejdź do |
|---|---|---|
| Przez pierwszą minutę czy dwie jest dobrze, potem prędkość spada o połowę | Obudowa osiągnęła swój limit termiczny przy pracy ciągłej | Rozwiązanie 2: zmierz to, potem rozwiązanie 4 |
| Jest wolno od pierwszego tokenu | To nie throttling, tylko problem z rozmieszczeniem albo pamięcią | To nie ta strona; zobacz „model się ładuje, ale działa wolno” |
| Szybko na zasilaniu sieciowym, wolno na baterii | macOS ogranicza wydajność przy pracy ciągłej na baterii | Rozwiązanie 3: podłącz zasilanie i sprawdź tryb niskiego poboru |
| Twoje liczby nigdy nie zgadzały się z recenzją, którą czytałeś | Publikowane benchmarki to wyniki chwilowe z zimnej maszyny | Rozwiązanie 5: porównuj z wartościami przy pracy ciągłej, nie chwilowymi |
| MacBook Air spada znacznie mocniej niż Pro tej samej generacji | Brak wentylatora — Air nie ma jak odprowadzić ciepła przy pracy ciągłej | Rozwiązanie 4: licz się z tym i zaplanuj wokół tego |
Kiedy się pojawia
Wzorzec jest charakterystyczny i to on odróżnia ten przypadek od zwykłego spowolnienia: pierwsze odpowiedzi są szybkie, a gdzieś między drugą a dziesiątą minutą prawdziwej pracy ten sam model na tym samym prompcie potrzebuje mniej więcej dwa razy więcej czasu.
- Streszczasz długi dokument albo przetwarzasz wsad, zamiast rozmawiać krótkimi zrywami.
- Masz MacBooka Air, który nie ma wentylatora.
- Maszyna leży ci na kolanach, na kołdrze albo stoi w zamkniętej podstawce bez przepływu powietrza.
- Pracujesz na baterii albo masz włączony tryb niskiego poboru mocy.
- Twoja liczba tokenów na sekundę nigdy nie zgadzała się z benchmarkiem z recenzji, a ty założyłeś, że coś jest źle skonfigurowane.
Co się właściwie dzieje
Ciągłe wnioskowanie to niemal najcięższe stałe obciążenie, jakie da się nałożyć na Maca: GPU idzie na pełnych obrotach tak długo, jak trwa generowanie, i — w odróżnieniu od gry — nie ma tu żadnych spokojniejszych klatek. Każda obudowa ma budżet termiczny przy pracy ciągłej niższy niż ten chwilowy, a gdy krzem osiągnie docelową temperaturę, system obniża taktowania, żeby ją utrzymać. To zachowanie zaprojektowane, a nie usterka. Ile stracisz, zależy niemal wyłącznie od obudowy: MacBook Air bez wentylatora ma tylko obudowę, w którą może oddać ciepło, i dławi najmocniej oraz najwcześniej; obudowy Pro 14 i 16 cali mają prawdziwe chłodzenie i trzymają taktowania znacznie dłużej; Mac Studio albo Mac mini na biurku jest przy tym obciążeniu praktycznie niczym nieograniczony. Publikowane benchmarki to prawie zawsze wyniki chwilowe z zimnej maszyny — i dlatego recenzja, którą czytałeś, nie opisuje twojego popołudnia.
Jak to naprawić
- 1
Potwierdź, że chodzi o ciepło, a nie o coś innego
Rozstrzygającym testem jest czas, a nie bezwzględna prędkość. Uruchom ten sam prompt na początku sesji i ponownie po dziesięciu minutach ciągłego generowania, a potem porównaj zgłoszony eval rate. Spadek o mniej więcej połowę w tym oknie to throttling. Powolność obecna już od pierwszego tokenu to inny problem — rozmieszczenie albo pamięć — i należy do innej strony.
# zsh — same prompt, cold and hot ollama run qwen3:8b "Write exactly 200 words about the sea." --verbose # ... run continuously for ~10 minutes, then repeat the identical prompt ollama run qwen3:8b "Write exactly 200 words about the sea." --verboseCzy zadziałało?Eval rate w dziesiątej minucie jest wyraźnie niższy niż w pierwszej na identycznym prompcie. Jeśli oba są równie wolne, to nie jest throttling. - 2
Zmierz bezpośrednio pobór mocy GPU i temperaturę krzemu
powermetricspokazuje, co dzieje się naprawdę, a nie jak to się odczuwa. Obserwuj pobór mocy GPU i temperaturę krzemu przez dłuższy przebieg: moc rosnąca do szczytu, a potem osiadająca na wyraźnie niższym plateau, przy temperaturze płaskiej na suficie, to throttling ujęty w jednym wykresie. Próbkuj raz na sekundę i zostaw to uruchomione przez prawdziwe zadanie, a nie przez krótki test.# zsh — GPU power and SMC sensors, once a second sudo powermetrics --samplers smc,gpu_power -i 1000 # Just the two lines that matter, for 60 samples sudo powermetrics --samplers smc,gpu_power -i 1000 -n 60 \ | grep -E "GPU Power|die temperature"Czy zadziałało?Pobór mocy GPU osiada na plateau poniżej wczesnego szczytu, a temperatura krzemu trzyma się płasko przy suficie. Ta para wartości to charakterystyczny podpis.sudo powermetrics --samplers smc,gpu_power -i 1000 -n 10 | grep -E "GPU Power|die temperature" - 3
Podłącz zasilanie i wyłącz tryb niskiego poboru mocy
macOS ogranicza wydajność przy pracy ciągłej na baterii niezależnie od temperatury, więc maszyna potrafi dławić, będąc wciąż chłodną. Tryb niskiego poboru mocy (Ustawienia systemowe → Bateria) robi to samo mocniej i z założenia. Oba da się szybko wykluczyć i oba dają dokładnie ten objaw. Na zasilaniu sieciowym z wyłączonym trybem niskiego poboru mierzysz obudowę, a nie politykę zasilania.
# zsh — on AC, and is Low Power Mode on? pmset -g batt | head -2 pmset -g | grep -i lowpowermode # 1 = enabledCzy zadziałało?pmset -g battzgłasza AC Power, a tryb niskiego poboru mocy pokazuje 0. Powtórz porównanie zimno-gorąco, żeby zobaczyć, jaka część spadku była na koncie tych ustawień.pmset -g batt | head -2 && pmset -g | grep -i lowpowermode - 4
Daj maszynie gdzie odłożyć ciepło
Fizyczne i nieefektowne, a odpowiada za realną część różnicy. Trzymaj otwartą klapę — MacBook z zamkniętą klapą w pionowej podstawce traci obudowę jako drogę odprowadzania ciepła. Trzymaj go z dala od miękkich powierzchni: kołdra albo kolana izolują dokładnie te płaszczyzny, którymi maszyna oddaje ciepło, a Air nie ma żadnych innych. Podniesienie go o dwa centymetry na podstawce z przepływem powietrza pod spodem mierzalnie zmienia plateau przy pracy ciągłej na maszynach bez wentylatora.
Czy zadziałało?Plateau temperatury krzemu wpowermetricsjest po zmianie niższe, a plateau tok/s przy pracy ciągłej — wyższe.sudo powermetrics --samplers smc -i 1000 -n 10 | grep -i "die temperature" - 5
Skalibruj oczekiwania według obudowy — to nasza charakterystyka, nie pomiar
Etykieta do tej tabeli: jest to nasza charakterystyka wyprowadzona z fizyki i ze zgłoszeń społeczności, a nie pomiary z naszego zbioru benchmarków. Nasz opublikowany zbiór zawiera niewiele wpisów z jednym kluczem sprzętowym Apple i żadnego wiersza dla obciążenia ciągłego, więc niczego tutaj nie da się uczciwie nazwać zmierzonym. Czytaj to jako oczekiwania, nie jako dane. MacBook Air (bez wentylatora): spodziewaj się największego spadku i najwcześniejszego — często już w pierwszych minutach ciągłego generowania. To dla tej obudowy normalne i nie jest usterką. MacBook Pro 14 i 16 cali: trzyma taktowania znacznie dłużej; umiarkowany spadek na długim przebiegu jest normalny. Mac Studio i Mac mini: przy tym obciążeniu praktycznie bez ograniczeń; duży spadek przy pracy ciągłej warto tu zbadać jako usterkę, a nie przyjąć do wiadomości. Czego nie należy uznawać za normalne na żadnym z nich: spadku w ciągu sekund albo takiego, który utrzymuje się po ostygnięciu i odstawieniu maszyny.
# zsh — which chassis is this? system_profiler SPHardwareDataType | grep -E "Model Name|Chip|Memory" - 6
Przy długich zadaniach przestań walczyć z fizykąNajczęstsze rozwiązanie
Jeśli twoja praca jest naprawdę ciągła — streszczanie wsadowe, długi przebieg agenta, przetwarzanie korpusu — produktywnym ruchem jest zmniejszenie obciążenia, a nie gonienie za chłodzeniem. Mniejszy model albo krótszy kontekst obniża pracę przypadającą na token, co obniża pobór mocy, co podnosi plateau, na którym osiądziesz. Model o klasę niżej, trzymający swoją prędkość przez godzinę, kończy długie zadanie szybciej niż większy, który po czterech minutach spada o połowę. Ustal, który rozmiar siedzi wygodnie na twojej maszynie, zanim uruchomisz wsad.
# zsh — compare sustained rates, not the first response ollama run qwen3:8b "Summarise this in 100 words." --verbose ollama run llama3.2:3b "Summarise this in 100 words." --verboseCzy zadziałało?Mniejszy model po dziesięciu minutach ciągłej pracy nadal zgłasza eval rate bliski otwierającemu. To właśnie to plateau, a nie pierwsza liczba, decyduje o czasie trwania zadania.Sprawdź, co pasuje do Twojego sprzętuznajdź rozmiar modelu, który utrzyma prędkość przez długie zadanieOtwórz kalkulator VRAM →
Jeśli nic z tego nie pomogło
Jeśli prędkość jest kiepska od pierwszego tokenu, a nie stopniowo spada, throttling nie jest wyjaśnieniem — właściwa jest strona o spowolnieniu niezależnym od systemu. Jeśli maszyna dodatkowo swapuje, to ono zdominuje każdy efekt termiczny i trzeba je naprawić najpierw.
- Model się ładuje, ale działa boleśnie wolno
- Twój Mac swapuje na dysk, zamiast uruchomić model
- Benchmarki społecznościowe według GPU i modelu
- Eval rate w pierwszej i w dziesiątej minucie na identycznym prompcie
- Wynik
sudo powermetrics --samplers smc,gpu_powerobejmujący oba punkty - Model twojego Maca i układ z
system_profiler SPHardwareDataType - Czy maszyna była na zasilaniu sieciowym i w jakim stanie był tryb niskiego poboru mocy
Powiązane
Najczęściej zadawane pytania
Dlaczego mój Mac zwalnia w połowie długiego generowania?
Bo ciągłe wnioskowanie trzyma GPU nieprzerwanie na pełnym obciążeniu, a każda obudowa ma budżet termiczny przy pracy ciągłej niższy niż chwilowy. Gdy krzem osiągnie docelową temperaturę, taktowania spadają, żeby ją utrzymać. To zachowanie zaprojektowane, nie usterka.
Jak odróżnić throttling od problemu z konfiguracją?
Po czasie. Throttling zaczyna się szybko i psuje przez minuty; problem z konfiguracją albo pamięcią jest wolny od pierwszego tokenu. Uruchom ten sam prompt na zimno i ponownie po dziesięciu minutach ciągłej pracy, a potem porównaj eval rate.
Dlaczego mój MacBook Air dławi znacznie mocniej niż Pro?
Air nie ma wentylatora, więc jego jedyną drogą oddawania ciepła jest sama obudowa. Pro 14 albo 16 cali ma aktywne chłodzenie i przy tym samym obciążeniu trzyma taktowania znacznie dłużej. Oba działają poprawnie; różnicę robi obudowa.
Dlaczego moje liczby nie zgadzają się z publikowanymi benchmarkami?
Bo publikowane wartości to prawie zawsze wyniki chwilowe z zimnej maszyny, mierzone na krótkim przebiegu. Twoja prędkość przy pracy ciągłej po dziesięciu minutach realnej roboty to inna wielkość — i to ona decyduje, ile naprawdę potrwa zadanie.
Czy praca na baterii to pogarsza?
Tak. macOS ogranicza wydajność przy pracy ciągłej na baterii niezależnie od temperatury, a tryb niskiego poboru mocy ogranicza ją z założenia jeszcze mocniej. Oba dają ten objaw przy wciąż chłodnej maszynie, więc wyklucz je, zanim uznasz, że chodzi o ciepło.