• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 0 Hlas(ů) - 0 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Strategie využívání video cache
#27
Jak jsem slíbil, tak jsem, v tropické noci před usnutím, provedl test postupného navyšování cache.

Test spočíval v tom, že jsem nastavoval cache v postupných krocích po 100 000 000 B a sledoval, na jaké hodnotě se ustálí zaplnění dopředného bufferu video cache (hodnota položky forward v Player Debug Info). Testoval jsme to na přehrávání streamu Top Gun - Maverick, 65,70 GB, průměrný datový tok podle databáze SCC je 68,88 Mbps, kódování HEVC, který jsem si uložil do Oblíbených, abych ho mohl spustit hned po startu Kodi. Připojení mám stabilní, skutečná maximální rychlost downloadu se pohybuje na hranici tarifu (150/10 od Vodafone/UPC). HW je Beelink GT King se 4 GB operační paměti a Gigabit Ethernet, instalace Kodi CoreELEC 20.2.

Výchozí sastavení v advanceedsettings.xml:, které používám, tedy pokud mám cache zapnutou, je:
 
Kód:
    <cache>
        <buffermode>0</buffermode>
        <memorysize>700000000</memorysize>
        <readfactor>40</readfactor>
    </cache>
Ta hodnota memorysize = 700 000 000 B je obvyklá, kterou používám. Po spuštění Kodi mám volné paměti lehce pod 3 000 MB, takže použiji-li klasický vzorec:
 
Kód:
3 000 / 3 * 0,85
dostávám se k doporučované hodnotě 850 MB, což je v byte 891 289 600. Takže mých 700 000 000 je bezpečně pod doporučovaným limitem. S testem jsem pak začal na hodnotě parametru memorysize = 1 000 000 000.

Při testu jsme postupoval tak, že jsem spustil Kodi, a hned vzápětí přehrávání streamu. Pak jsme na Player debug Info sledoval postupné obsazení dopředného bufferu. Při nižších hodnotách nastavení video cache nikdy dopředný buffer více jak 75 % alokované paměti nedosáhl, ale jakmile jsem nastavil vyšíš hodnoty, cca od 1 300 000 000, tak obsazení dopředného bufferu tento limit přesáhlo. Přeci je, ta dynamika scén v úvodu filmu není příliš veliká, tedy i datový tok přehrávaného obsahu je spíše nižší než je průměr celého steramu, takže se zpětný buffer nenaplní tak rychle a tím pádem si ten dopředný zpočátku něco z toho zpětného ukousne.

On-line jsem na PC přes SSH terminál sledoval Kodi log, takže jsme měl přehled o případných chybách a problémech v Kodi. Až do hodnoty memorysize 1 700 000 000 vše běželo bez jakýchkoliv problémů. Od  následující testované hodnoty (1 800 000 000) se při otevření seznamu streamů v SCC začala objevovat chybová hláška SCC, ale i přesto se přehrávání spustilo a běželo bez problémů.

Viditelnější problém začal při memorysize 2 000 000 000. Přehrávání běželo, ale při návratu do hlavního menu, kde se ještě stále načítaly widgety, a já je začal, jeden po druhém, zobrazovat, už bylo vidět, že Kodi gui nestíhá. Úmyslně jsem při tom nechal nastaveno zobrazení většího počtu widgetů, což má samozřejmě na spotřebu paměti také značný vliv. Současně s tím se v logu objevovaly hlášky, že některé jednoduché service služby (u kterých mám naprogramovánu kontrolu délky běhu), překročily nastavený limit této kontroly. Pokud jsme ale tyto pokusy dělal v situaci, kdy jsem nejdříve nechal načíst všechny widgety, tak i při této hodnotě memorysize Kodi běželo bez problémů.

Obsazení paměti jsme sledoval ve dvou fázích. Po spuštění přehrávání a načtění celé cache, byla nejnižší hodnota volné paměti při memorysize = 2 000 000 000 cca 840 MB, a pak poté, co jsem v této situaci zobrazil hlavní menu a postupně projel všechny jeho položky a zobrazil všechny widgety. V tomto případě se hodnota volné paměti v Kodi dostala až na 210 MB.

Zkusil jsem ještě i 2 100 000 000, ale tam už při návratu do hlavního menu Kodi začalo stávkovat ještě více a nakonec gui, při pohybu po položkách, kdy se měly zobrazit další, dosud nezobrazené widgety, přestalo reagoval úplně a nakonec přestal reagoval (přes SSH terminál) i systém.

Jinak se potvrdilo, že relace mezi nastavenou hodnotou video cache a ustálenou hodnotou obsazení dopředného bufferu (položka forward v Player Debug Info) byla vždy dodržena. Ve všech případech nastavení memorysize to bylo 75 %.

Shrnul bych to asi takto:
  • je velmi pravpěpodobně možné dosáhnou i vyšší hodnoty nastavení video cache, než jsme doposud uváděli
  • limit v takovém případě ale není jednoduché stanovit, a to z mnoha důvodů, protože při tom záleží na mnoha aspektech:
    • typ operačním systému
    • nastavení Kodi a jeho doplňků
    • použitý skin a jeho nastavení (zejména počet widgetů)
    • způsob využívání Kodi - tady mám na mysli to, že pokud někdo bude přehrávat video  a nebude se přitom vracet do menu, může si patrně dovolit cache nafouknout o něco málo více, ale to je asi stav, na který bych se nikdo neměl spoléhat
    • další využívání systému, na které Kodi běží
Musím se přiznat, že jsem se na ten test moc dobře nepřipravil a nepromyslel jeho scénář, zejména postup a časování jednotlivých kroků, do všech důsledků. Pokud bych se k tomu ještě někdy vrátil, určitě ho budu provádět daleko exaktnějši a komplexněji. Nějaká data sice mám, ale nejsou konzistentní, protože jsem ne úplně právě ten postup a časové odstupy mezi jednotlivými kroky dodržel. Takže je není dost dobře možné je srovnávat a tím pádem je ani nepublikuji.

Zakončím to tedy tam, že si nyní v Kodi nastavím memorysize na hodnotu, která se mi při testu jevila jako poslední bezproblémová, což je tedy 1 700 000 000, a budu s ní Kodi delší dobu provozovat. Budu o zkušenostech informovat.
   
Začínám...
 
Citovat
  


Příspěvků v tématu
RE: Strategie využívání video cache - od JiRo - 22.8.2023, 14:02

Přejít na fórum:


Prochází: 1 host(ů)