Gemenskapslösning

ZimaBlade fastnar runt 800 MHz med Jellyfin vid 100 % CPU: ett fel i userspace-regulatorn och den källverifierade ondemand-lösningen

An August-September 2025 ZimaBlade/ZimaBoard thread where an N3350 stayed around 795-800 MHz while Jellyfin hit 100% CPU and felt extremely slow. Temperatures were low. IceWhale checked cpufreq state and found scaling_governor set to userspace. The original poster changed it to ondemand, confirmed boosts up to about 2.3 GHz and dramatically better responsiveness, while another user reported the workaround reverted after reboot. IceWhale said the next version would fix it.

Den här källan innehåller en tydlig officiell felsökningskedja. ZimaBlades N3350 låg kvar nära 795–800 MHz även när Jellyfin drev processoranvändningen till 100 procent. Temperaturerna var endast cirka 34–45 °C, och samma beteende återskapades på ett nyinstallerat ZimaBoard med samma processor. IceWhale undersökte sedan processorns frekvenspolicy och fann scaling_governor oväntat ställdes in på userspace.

Zima-Jerry föreslog att byta governor till en dynamisk policy. Den ursprungliga skribenten ändrade den till ondemand och bekräftade uttryckligen att processorn då ökade till ungefär 2,3 GHz och att responsiviteten förbättrades dramatiskt. En annan användare rapporterade att lösningen återställdes till userspace efter omstart, och IceWhale svarade att nästa version skulle åtgärda problemet. Detta bör därför betraktas som en historisk governor-regression i ZimaOS med en källbekräftad lösning under körning – inte som en diagnos av hårdvarufel.

btop visar ZimaBlade N3350 på 795 MHz och 100 procent processoranvändning under bearbetning av Jellyfin-miniatyrbilder
Processorn var fullt belastad, men frekvensen låg kvar runt 795 MHz, vilket stämde med användarens långsamma Jellyfin-upplevelse.
btop visar att ZimaBlade-processorn fortfarande ligger runt 795 MHz när Jellyfin-belastningen ökar och minskar
Frekvensen ändrades knappt mellan hög och låg belastning, vilket pekade på en processorpolicy snarare än normal dynamisk skalning.

Källmaterialet stödde inte termisk strypning

Användaren hade monterat en anpassad kylfläns/fläkt och rapporterade processortemperaturer under 45 °C vid belastning. De noterade också att systemet tidigare hade varit varmare – upp till cirka 65 °C – utan samma problem med responsiviteten.

Det gjorde att ”processorn överhettas och stryps till 800 MHz” passade dåligt med de observerade bevisen.

Samma beteende återskapades på ett annat ZimaOS-system som installerats från grunden

OP installerade senare ZimaOS från grunden på ett ZimaBoard med samma processor och såg samma gräns på 800 MHz samt långsam Jellyfin-prestanda. Det minskade sannolikheten för att det rörde sig om ett skadat ZimaBlade-kort.

IceWhale bad om den faktiska processorfrekvenspolicyn

De officiella diagnostikkommandona kontrollerade:

cat /sys/devices/system/cpu/intel_pstate/no_turbo
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Det här är skrivskyddade kontroller och är säkrare än att omedelbart tvinga fram maximal klockfrekvens eller ändra BIOS-ströminställningar.

IceWhale hittade scaling_governor=userspace

Zima-Jerry sa att källans utdata visade userspace, medan den förväntade ZimaOS-policyn vid den tidpunkten inte borde ha lämnat processorn fast där.

De föreslagna alternativen under körning omfattade powersave eller ondemand, beroende på den tillgängliga cpufreq-drivrutinen och de tillgängliga guvernörerna.

ondemand bekräftades av källan återställa processorboostningen

Källkommandot var:

echo ondemand | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

Därefter rapporterade OP att frekvensen ökade till omkring 2,3 GHz och att responsen förbättrades dramatiskt.

Det här kommandot kom direkt från IceWhales personal i den historiska tråden, men aktuella system kan visa andra standardguvernörer, till exempel schedutil. Kontrollera det aktuella tillståndet innan du skriver något.

Lösningen bestod inte efter omstart för en annan användare

Khapra sade att kommandona åtgärdade problemet under den pågående sessionen, men efter omstart återgick guvernören till userspace. Zima-Jerry svarade att nästa version skulle åtgärda det.

Skapa inte en anpassad tjänst som körs vid systemstart på ett aktuellt ZimaOS-system om felet inte faktiskt kan återskapas i den aktuella versionen och IceWhale inte redan har åtgärdat det.

Jellyfin var arbetsbelastningen som avslöjade felet i processorpolicyn

Generering av miniatyrbilder och omkodning drev processorbelastningen tillräckligt högt för att göra frekvensbegränsningen uppenbar. Det bevisades inte att appen var grundorsaken: processorguvernörens tillstånd var problemet på systemnivå som hindrade processorn från att reagera på belastning.

Testa först med den aktuella stabila versionen av ZimaOS

Källan gällde 1.4.x-versionerna. Nuvarande ZimaOS är mycket nyare. På ett aktuellt system bör du kontrollera guvernören och frekvensen under belastning innan du tillämpar lösningen från 2025.

Den aktuella ZimaBlade-dokumentationen identifierar 3760-modellen med samma Intel N3350-plattform, så den historiska diagnostiken är fortfarande användbar när symtomen stämmer.

Använd den aktuella hårdvarubaslinjen för ZimaBlade.

Vanliga frågor om ZimaBlade på 800 MHz

Bevisade källan att ZimaBlade-processorn var defekt?

Nej. Samma problem uppstod på ett annat system och ändrades omedelbart när processorns guvernör ändrades.

Vilken inställning hittade IceWhale?

scaling_governor ställdes in på userspace.

Fungerade ondemand?

Ja. Den ursprungliga inläggsförfattaren bekräftade att processor­frekvensen steg till omkring 2,3 GHz och att Jellyfins och systemets respons förbättrades dramatiskt.