Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Filmy a seriály, streamovací služby
Televize  |  Projektory
Audio a domácí kina
Multimediální centra  |  Ostatní
Svět hardware  |  Digimanie
Svět mobilně

Faster! Harder! FireCoder!

16.12.2009, Radek Jahoda, recenze
Toshiba vytáhla z Cell procesoru v PlayStation 3 jednu jeho část - stream procesor SpursEngine určený coby media procesor pro dekompresi a kompresi videa. Své uplatnění našel v samostatném čipu, který si zase našel cestu do karty Grass Valley FireCoder Blu.
Podívejme se na první výsledky. Nejprve převod do MPEG-2 v různých programech a s různým nastavením. Klasická softwarová komprese trvá TMPGEnc téměř hodinu, zapnutí akcelerace CUDA téměř nepomůže. Připadá mi, že program zapne náhled výstupu na obrazovku, který je akcelerován přes CUDA, jinak zobrazuje obraz vstupu, tedy dekódovaného vstupního videa. CUDA se pak používá i při filtrech, které ale netestujeme. Jen o něco lépe si vede Vegas a PowerDirector se softwarovou kompresí, který i tak dosáhl docela slušných 35 minut.

Akcelerace zde jednoznačně vede, následuje SpursEngine přes FireCoder Writer a o něco lepší je TMPGEnc se zapnutou akcelerací SpursEngine, CUDA zde opět moc nepomohla. Nejrychlejší je FireCoder Writer v transcode módu, který vše zvládl za necelých 12 minut, to je téměř 2x rychleji než délka původního videa.


MPEG-2 1920x1080i (3.1 GHz)

Druhý test je v té samé konfiguraci, ale s výstupem do H.264. Softwarově byl nejpomalejší Vegas, kterému převod trval téměř 5 hodin. TMPGEnc to samé zvládl softwarově za méně než poloviční dobu, PowerDirector byl ještě o půl hodiny rychlejší. Další urychlení dosáhl PowerDirector pomocí CUDA a AVIVO, přičemž druhý jmenovaný byl o 10 minut rychlejší. Další pořadí je již stejné jako v předchozím testu s MPEG-2 - leaderem je opět komprese pomocí SpursEngine.

Nutno poznamenat, že softwarová komprese do H.264 zaznamenala značné zpomalení oproti MPEG-2, což není žádné překvapení, protože jde o složitější a komplexnější komprimační algoritmus. Komprese přes SpursEngine naopak žádnou změnu nezaznamenala, změny jsou jen v sekundách, což jde na vrub jiným komponentám, zásahu operačního systému a přesnosti měření. Není se čemu divit, jde o streamový procesor, který musí pracovat při učitém datovém toku bez ohledu na to, jakou činnost právě provádí.


H.264 1920x1080i (3.1 GHz)

Abychom zjistili, jakou roli hraje při kódování procesor, tak jsem zpomalil jeho rychlost na minimum, což je 1 GHz, tedy 3.1x. Testoval jsem jen PowerDirector a FireCoder Writer, což pro náš účel bude stačit. Jak je vidět, došlo ke značnému zpomalení, pouze rekomprese v transcode módu u FireCoder Writer zůstala téměř beze změn.


H.264 1920x1080i (1 GHz)

Snížení rychlosti 3.1x zapříčinilo zpomalení přibližně 2,5x při téměř všech měřeních. V transcode módu dochází k dekompresi i kompresi pomocí karty, takže došlo jen k neznatelnému zpomalení.


Míra zpomalení při snížení frekvence procesoru

Pokud vypočteme největší urychlení kódování do H.264 pomocí karty FireCoder Blu, tak je to na frekvenci 1 GHz 20x mezi PowerDirectorem a kartou. Na vyšší frekvenci 3.1 GHz je ten stejný poměr "jen" 8.5x, při využití NVIDIA CUDA 3,5x a u ATI AVIVO 2,7x oproti transcode pomocí FireCoder Writer.

To je ale ten nejnepříznivější případ, nejčastější použití bez transcode při výstupu z video editoru bude při srovnání čistě softwarové komprese přibližně 4x zrychlení na nízké i pomalé frekvenci, protože se zde uplatňuje vliv dekomprese, vše při srovnání s PowerDirector. Ke značnému urychlení naopak může dojít při frameserveru z Vegasu do TMPGEnc se zapnutým SpursEngine. V tomto případě půjde o urychlení 13,5x. Samozřejmě jsou to hodnoty vycházející z těchto měření a u různých videí a v různých situacích kompozic v editoru se mohou lišit.