Adobe, ATI a ti další
Včera se děly velké věci. Určitě jste neunikli našim článkům o novém Flash Playeru 10.1 beta s fungující GPU akcelerací H.264 videa (například YouTube HD). V detailním rozboru jsme se věnovali všem důležitým hardwarovým společnostem, které do této oblasti spadají. Rozruch způsobil závěrečný verdikt ohodnocený známkami jako ve škole, ve kterém většina firem (až na Nvidii) dopadla hůře hež průměrně.
Největší kritiku sklidil závěr u AMD/ATI. V době psaní článku jsme ještě neměli k dispozici funkční ovladače a verdikt proto nemohl dopadnout jinak. ATI však ještě večer stačila zareagovat vydáním nových ovladačů Catalyst 9.11, ve kterých hlavní novinkou byla ona podpora Flash Playeru.
A teď k jádru pudla – kterých GPU se akcelarace týká. V tom je největší problém, protože zřejmě nemají jasno ani v AMD/ATI. Byly nám zaslány tři matoucí signály.
1. Adobe
Během psaní článku jsme dostali informace Adobe (vývojáře Flash Playeru). V jejich release notes (ke stažení zde) se doslovně píše toto.
Hardware video decoding of H.264 content in Flash Player 10.1 is supported on AMD/ATI products with UVD2 with the ATI Catalyst™ Software Suite, starting with version 9.11 for the ATI Radeon™ family of products, and driver release 8.68 for the ATI FirePro™ family of products.
Family | Product |
Radeon | Radeon HD 4xxx (and higher) |
Mobility Radeon | Mobility Radeon HD 4xxx series (and higher) |
Integrated/Motherboard | Radeon HD 3xxx (and higher) |
FirePro | FirePro V3750, FirePro V5700, FirePro V7750, FirePro V8700, and FirePro V8750 (and later) |
Jako základní podmínka se jeví přítomnost obvodu UVD2 a ovladače Catalyst 9.11. Ve zmiňovaných integrovaných řešeních ale není cosi v pořádku, Radeony HD 3xxx UVD2 neobsahují, pouze první generaci UVD. Aby toho nebylo málo, ATI má v sekci ATI Stream SDK na webu čipy HD 3000 a HD 3100 (v čipsetu AMD 760G, resp. 780V). Tyto GPU neobsahují UVD vůbec, označení HD jim spíše nepřísluší. Ostatně v jiných částech webu výrobce HD z názvu vypustili a jedná se pouze o Radeony 3000 a 3100.
Při psaní článku jsem tedy vycházel z jediných v té době dostupných informací, které jsem doplnil nepříliš povedeným testem Anandtechu a měřením Lazara, který vyzkoušel Radeon HD 4870 (UVD2) s ovladači dodanými s ATI Stream SDK 2.0 beta4, které se v systému hlásí jako Catalyst 9.11. Akcelerace nefungovala, závěr byl učiněn, známka pro ATI za 5.
High-end karta Radeon HD 5870 akceleraci Flashe papírově zvládá, uživatelé však podporu ocení u starších a pomalejších modelů.
2. Prohlášení AMD/ATI
Tisková zpráva ATI (ke stažení zde) naopak píše, že výrobce spolupracoval s Adobe blíže a dekódování H.264 probíhá přes rozhraní DirectX (myšleno zřejmě součást DXVA) a ATI Stream (GPGPU rozhraní pro obecné výpočty). Podporované karty jsou stejné, jako v tabulce Adobe. Jen není jisté, která verze ATI Stream je potřebná, release 1.4 beta je kompatibilní se všemi kartami HD 2000 a novější, verze 2.0 beta podporuje HD 4000 a novější. Vzhledem k přítomnost starších GPU v tabulce jde zřejmě o ATI Stream 1.x.
Tato zpráva přišla, když už byl článek dokončený, na verdiktu se ovšem nic nemění, jen se celá situace zdá složitější.
3. Catalyst 9.11
Vrcholem večera byla finální verze nových driverů. Přiložené PDFko s release notes (ke stažení zde) jako vždy oznamuje, jakých změn jsme se dočkali. Žádná zmínka o UVD/UVD2 ani ATI Stream, k Flash Playeru jsou uvedeny pouze podporované karty, v tomto případě Radeon HD 4000, HD 5800, HD 5700.
Seznam karet sedí s tím, co píše Adobe, jen je počet ořezán o karty, které nemají UVD2 (tedy HD 3000). Ovladače se nakonec ukázaly jako řešení, uživatele hlásí, že s Catalyst 9.11 je akcelerace Flash Playeru opravdu dostupná na kartách Radeon HD 4000 i HD 5000. Doplněny nové poznatky do článku, změněn verdikt, známka za tři (možná 2-).
Nové testy a informace
Matení nepřítele?
Z dostupných informací skutečně není jasné, jaký způsobem dekódování u ATI probíhá a jestli se to týká i karet starších než Radeon HD 4000. Mlžení je takřka dokonalé. Verdikt se přesto některým čtenářům nelíbí, co si to vůbec dovolujeme posuzovat podle betaverze aplikace. V případě, že by problémy měla ATI i Nvidia, závěr bych učinil jiný. Jenže u ATI byl stále velký vroubek. Zpět ale k Nvidii.
Nvidia Ion – Akcelerace funguje, ale pozor na 1080p video a aktivní Windows Aero
Kalifornští nám poskytli obsáhlou příručku, jak na tom jejich karty s podporou jsou, kde mohou mít problémy apod. Výsledky testů pro ně vyzněly pozitivně. Opravdu jsme se setkali s horší plynulostí videa na popisovaném příkladu (použit jednojádrový Atom a single-channel RAM), při rozlišení 1080p nebyl počet fps optimální. Obvinil jsem z toho rozhraní Vista Aero, které grafiku brzdí i na desktopových low-end kartách nebo IGP (ať už jde o Radeon či GeForce).
Právě akcelerace na slabých systémech s kombinací Ion+Atom nebo GeForce IGP s pomalými nebo jednojádrovými procesory je ze všeho nejdůležitější. Akcelerace na kartách Radeon HD 5000 je potěšující, ale zároveň se předpokládá, že máte i výkonný procesor, který si s takovým videem poradí. V podstatě obrácené chování oproti minulosti, kdy z high-end karty Radeon HD 2900 vypustili UVD obvod, protože se předpokládal silný procesor. UVD se pak dostal až do střední a nižší třídy HD 2600 a HD 2400. GeForce na tom byly podobně, high-end karty série 8800 s čipem G80 pokročilý videoprocesor také postrádaly, ale nižší série jej měly.
Acer Ferrari One 200 – AMD Congo v akci, možná konkurence Intel CULV
AMD si kritiku zasloužila především za (zřejmě, o tom dále v článku) vynechanou podporu Radeonu HD 3200, který se nachází v čipových sadách AMD 780G na desktopu, nebo RS780 na noteboocích a nové úsporné platformě AMD Congo (více v recenzi Acer Ferrari One 200 na XNTB). Předchůdce AMD Yukon obsahuje staré GPU odvozené z řady Radeon X1000, akcelerace tedy není možná vůbec.
Je akcelerace nutná?
Ve včerejších diskuzích u nás i konkurence jsem se párkrát dočetl, proč akcelerovaný Flash (když píšeme obecně o akcelerace videa, situace je stejná) vlastně potřebujeme, když jsou dneska procesory tak výkonné? Redaktor PCTuningu napsal rovněž úsměvnou větu: „Proč ale v dnešní době akcelerovat HD videa přes CPU, když tu máme výkonné GPU?“
Odpověď je někde mezi. Akcelerace je potřebná na pomalých procesorech (všechny úsporné platformy AMD, Intel a VIA), ale není k tomu nutné výkonné GPU. Stačí pomalé s příslušným obvodem nebo rozšiřující kartou jako dělá Broadcom.
Čipsety (IGP) Intelu pro Atom ve většině případů potřebný obvod neobsahují. Výjimkou je ovladači pohřbený GMA 500 (Poulsbo - US15W) a GN40, který se objevil v některých miniboocích s Atomem N280 (u nás jsem se s nimi nesetkal). CULV platforma s čipovou sadou Intel GS45 (X4500HD, X4500MHD) teoreticky akceleraci zvládne, ale jen ve Windows Vista/7. VIA a její IGP Chrome nebo embedded GPU S3 Chrome podporu zatím neuvádí. GeForce/Ion funguje dobře. A pak tu máme zase ATI, která se spoléhá na HD 3200.
ATI Radeon HD 3200 (780G)
ATI Radeon HD 3200 (AMD 780G)
Ještě včera jsem byl přesvědčený, že podpora neexistuje. Z dostupných informací to příliš jasné nebylo. Test na systému s beta ovladači Catalyst 9.11 mé obavy potvrdil. Večer jsem pro jistotu ještě zkusil finální Catalyst 9.11, pokusy o přehrání Flash videa končily pádem webového prohlížeče.
Probdělá noc mi na otázku, kde se stala chyba, neopověděla. Přesto mi to nedalo a ráno jsem z operačního systému kompletně odstranil Catalyst, Flash Player a pro jistotu i prohlížeč webu a vše nainstaloval znovu. Mezitím se v našich diskuzích ozývali první, kteří hlásí akcelerovaný Flash i na nepodporovaných Radeonech.
Nakonec jsem uspěl i já.
Praktické testy
Abych nepřišel jen s dalším típnutým screenshotem, že to opravdu funguje, monitoroval jsem zatížení CPU, GPU i spotřebu celého počítače. Sestava se nezměnila – Athlon X2 4850e, AMD 780G, Catalyst 9.11, Windows 7 64b, stejně jako testovací video Avatar.
Při testu jsem nechal video nabufferovat až do konce (samotné načítání dat docela výrazně zatěžuje procesor, pozor na to). V BIOSu byl zapnutý režim CnQ (snižování frekvence a napětí procesoru), takty a napětí vidíte k okně CPU-Z. GPU-Z slouží pouze jako důkaz přítomnosti Radeonu HD 3200, neumí bohužel monitoring teploty, taktů, zatížení… AMD GPU Clock Tool frekvenci jádra i pamětí ukazuje, navíc má indikátor stavu UVD akceleračního obvodu (Busy: pracuje, idle: nepracuje). Skvělým pomocníkem se ukázal i nejnovější AMD OverDrive, který ukazuje i zatížení GPU a dalších údajů, navíc s ní lze lehce nastavovat systém (viz dále).
Pro zvětšení klikněte na obrázek.
Firefox 3.5 Portable, Flash Player 10 – akcelerace GPU zcela jistě nefunguje, procesor na maximální frekvenci a vysoké zatížení, UVD idle, nízký GPU load způsobený pouze vykreslováním Windows Aero
Internet Explorer 8, Flash Player 10.1 beta – UVD pracuje, GPU load nad 60 %, zatížení CPU naopak nízké, ale aktivní CnQ frekvenci drží většinou na maximu nebo středních hodnotách
Internet Explorer 8, Flash Player 10.1 beta – stejné jako na přechozích obrázcích, v AMD OverDrive jsem ale nastavil napevno nejnižší možnou frekvenci CPU na 1 GHz a napětí 1 V. Optimální nastavení, které by mělo fungovat i s dobře fungujícím CnQ (možná problém jen u mě). CPU load je samozřejmě vyšší, hodnoty okolo 50 procent znamenají, že jednojádrový procesor na shodném taktu by už asi nestíhal.
Spotřeba
Důležitým argumentem použití GPU akcelerace je reálná spotřeba. Měřeno zásuvkovým wattmetrem, zdroj v počítači Seasonic 400W OEM, zbytek sestavy, stejně jako absolutní čísla nejsou příliš podstatná (instalováno hodně rozšiřujících karet, čtečky, Bluetooth…).
Rozdíly jsou zajímavé. Starý Flash Player zvýšil spotřebu o 70 % oproti idle. Když se do hry zapojil Radeon, průměrná spotřeba klesla dost výrazně a v případě podtaktování (video jelo v pořádku) se hodnoty snížily až o 30 W. Na desktopu nad chvilkovým zvýšením spotřeby možná mávnete rukou, na mobilních zařízeních se počítá každý watt.
režim | spotřeba |
idle (CnQ aktivní), screenshot plochy | 55 W |
YouTube HD – CPU (Flash Player 10) | 70-95 W |
YouTube HD – GPU (Flash Player 10.1) | 60-80 W |
YouTube HD – GPU (Flash Player 10.1), CPU@1GHz | 60-65 W |
Malé velké vítězství ATI
Malé velké vítězství ATI
Verdikt včerejšího článku se může měnit každou hodinou, každým dnem. ATI je toho příkladem. Když přičteme úspěch s integrovanými Radeony HD 3000, zbývají ještě dva sporné body. Jak jsou na tom stejně vybavené discrete Radeony? Řada 3000 dle ohlasů funguje taky, v diskuzních to někteří potvrdili, Lazar nám poslal i ověřující screenshot s kartou Radeon HD 3870.
Radeon HD 3870 – akcelerace ve Flash Playeru 10.1 vám zřejmě fungovat bude, i když se tím ATI nechlubí
Otazník ještě visí nad řadou HD 2000 (z ní vlastně IGP HD 3200 vychází), různými Mobility variantami a AGP (PCI mají pokud vím na starost výrobci karet, třeba PowerColor, zvláštní péči a podporu ale neočekávám). Čísla tedy nejsou konečná a v komentářích pod článkem uvítáme důkazy u funkčnosti GPU akcelerace Flash Playeru i na těchto kombinacích. Stejně tak se můžete pochlubit výsledky s S3 Chrome, Intel nebo Broadcom. V tom případě ale příspěvky vkládejte pod předchozí článek.
Kdybych měl nyní ATI hodnotit stejným měřítkem jako včera, pořád by to nebyla čistá jednička. Otazníků je příliš mnoho, informací naopak málo. Za tu mlživou kampaň známku opravuji na 1–.
U tabulky podporovaných Radeonů mě napadá tohle vysvětlení. ATI garantuje funkčnost pouze u uvedených karet, ale na jiných to může fungovat, byť bez záruky úspěchu. Akcelerace zřejmě probíhá skrz DXVA jako u Nvidie a ATI Stream je možná hudbou budoucnosti při počítání 3D grafiky a animací ve Flashi. Ostatně podobně zněl i dodatek Nvidie, která to v přístích verzích přinese také. Oba výrobci toho mohou dosáhnout vlastním GPGPU rozhraním nebo třeba OpenCL nezávisle na platformě. I když se Flash mnoha lidem nezamlouvá, do budoucna se s ním určitě ještě počítá. Open Screen Project, ve kterém už jsou zapojeny snad všechny velké IT firmy, buduje velké plány.
Pokud včerejší článek něterým čtenářům zamotal hlavu, omlouvám se. Cílem nebylo mást, ani vychvalovat/pomluvit některou ze společností. Celou kauzu jsem možná nechtěně vyprovokoval sám. Aspoň si teď dokážete představit jakou práci dá shromáždit materiály, testy a samotný (doufám záživný) text, když někdo informace včas v dostatečné míře dodá a někdo rozešle matoucí zprávy a faktické trhliny má i na vlastním webu.
Poznámka 1: Mimo GPU akcelerace se Flash Player 10.1 beta dočkal i dalších optimalizací a zrychlení. I běžný webový (Flash) obsah je náročný na systémové prostředky a každé zlepšení výkonu je vítané. Například Tralalák uvedl, že CPU load VIA Nano na titulní straně ExtraHardware klesl až o 40 procent.
Poznámka 2: Redakce CDR.cz ve svém článku o Flash Playeru zjistila, že nová verze způsobí problémy s kvalitou videa YouTube. Obraz není vyhlazený a vypadá jako přeostřený s nižším rozlišením. Osobně tento problém nepozoruji.