Jellyfin-prestaties meten zonder cache met capaciteit te verwarren

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

Jellyfin-benchmarks worden misleidend wanneer een warme bestandssysteem- of metadatacache wordt beschouwd als bewijs van de hardwarecapaciteit bij een koude start.

Bij het voor de tweede keer openen van een bibliotheek of bij een herhaalde stream kunnen gegevens worden hergebruikt die al in het geheugen staan, terwijl de eerste uitvoering mogelijk moet wachten op opslag, metadata en het opstarten van processen. Beide toestanden zijn nuttig, maar beantwoorden verschillende vragen. Voer koude en warme tests uit als afzonderlijke gevallen, met dezelfde media, client, kwaliteit en concurrerende werklast, zodat hergebruik van de cache niet wordt aangezien voor extra hardwarecapaciteit.

Koude en warme uitvoeringen beantwoorden verschillende vragen

Een koude test laat zien hoeveel tijd het kost om status uit de opslag op te halen en werksets opnieuw op te bouwen, terwijl een warme test het herhaalgedrag toont nadat nuttige gegevens in het geheugen aanwezig zijn. Het middelen van beide verbergt het onderliggende mechanisme.

Herhaalde leesbewerkingen kunnen opslagwerk vermijden zolang de gegevens in de Linux-paginacache blijven.

Registreer de eerste uitvoering na een herstart afzonderlijk van twee herhaalde uitvoeringen. Gooi het koude resultaat niet weg alleen omdat het warme resultaat gunstiger is.

Metadatabenchmarks zijn bijzonder cachegevoelig

Posteroverzichten, zoekopdrachten en bibliotheekpagina's kunnen herhaaldelijk dezelfde kleine bestanden en databasepagina's openen. Deze werklasten laten vaak een groter effect van een warme cache zien dan een lange opeenvolgende mediastream.

Door Jellyfin-containergegevens weg te verplaatsen van tragere mediaschijven verandert het koude pad rechtstreeks; bij één NAS-configuratie staat Jellyfin-appdata op een SSD, terwijl de media op slapende HDD-opslag blijft staan.

Meet na een herstart de tijd voor het openen van een benoemde bibliotheek en voor een zoekopdracht, en herhaal deze daarna. Als het verschil groot is, neem dan beide waarden op in elke opslagvergelijking.

Achtergrondtaken kunnen de vergelijking verstoren

Een geplande scan, taak voor miniaturen, back-up of andere container kan tussen uitvoeringen nuttige pagina's uit de cache verdringen of opslagwachtrijen belasten. Een 'cacheresultaat' is alleen interpreteerbaar wanneer de concurrerende werklast bekend is.

Jellyfin voert bibliotheekwerk uit via geplande mediascans. Achtergrondonderhoud moet daarom constant worden gehouden in plaats van tussen benchmarkuitvoeringen te mogen veranderen.

Voer één gecontroleerd benchmarkvenster uit met zware taken gepauzeerd en daarna een tweede met de normale services actief. De werklastkaart voor een thuismediaserver helpt bepalen welke overlap in de echte acceptatietest thuishoort.

-15% OFF
Single board computer zimaboard2

Capaciteit is het herhaalbare slechtste normale geval

Hardwarecapaciteit moet de werklast beschrijven die de server onder verwachte omstandigheden kan volhouden, niet het snelste resultaat uit de cache of een kunstmatig slecht scenario dat niemand in de praktijk ervaart. De test heeft een benoemd scenario en een acceptatiecriterium nodig.

De USE-methode koppelt capaciteit aan verzadiging van resources en fouten, in plaats van aan één getal voor de verstreken tijd.

Definieer acceptatievoorwaarden voor het opstarten, zoeken en afspelen en herhaal de koude en warme gevallen na elke wijziging. Noem het systeem alleen verbeterd wanneer het relevante geval consistent verbetert.

Tech & AI HUB

Meer om te lezen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.