Všemi opovrhovaná síla cloud technologie

BarackObama , 15.01.2015 13:16
!!!Upozornění, jedná se o technicky zaměřený článek, který většina laiků nemusí správně pochopit, ale přesto se pokusím v tomhle mém prvním a zřejmě i posledním článku, zde na Konzolistovi, to zjednodušit a popsat jednotlivé prvky tak, aby tomu rozuměli všichni, pokud možno!!! ************************************************** Může Xbox One a jeho "síla cloudu" transformovat next gen hraní na úplně jiný, pomyslný level, než jak ho známe nebo mají představitelé Xbox divize od Microsoftu jen hlavu v "oblacích"? Na to se pokusím odpovědět v mém, až pekelně rozsáhlém článku o cloud technologii, internetu a jeho odezvě, a všeobecně to, co se nejvíce skloňuje při debatě o revoluční "pomůcce" (deal with it, pozn. aut.) tohoto velkého, softwarového giganta. Začněme tím, že se rychle podíváme na to, co se má na mysli tím "cloud computingem". Před PR a marketingem lidí, kteří převedli své až fantastické představy o cloudu do rovnice, byl cloud computing známý jakožto "distribuované výpočty". Jednoduše řečeno, výpočetní práce, kterou jinak provádí běžně lokálně CPU (procesor) na naších běžných PC, se díky cloudu dá distribuovat/zpracovávat přes internetovou síť na vzdálených serverech, což usnadňuje vývoj a taky jej podstatně urychluje, zvlášť když se jedná o megalomanský projekt, na kterým pracuje několik desítek lidí zároveň, například. Stávající Microsoftí cloud platforma se nazývá Azure, začala v roce 2010, a její podíl na trhu roste rok od roku neuvěřitelným tempem, na rozdíl od platforem konkurenčních společností jako je Amazon a Google (v říjnu minulého roku byly dokončeny a zprovozněny servery pro Jižní Afriku a Austrálii, pozn. aut.). Tak muka o kraťoučké historii Azure nadvlá... pardon platformy... máme za sebou. Pojďme se podívat tedy na to, jak se to s tím zázračným cloudem vlastně má, jestli Vás netahám jen za nos, protože jsem konec konců politik, a ještě k tomu z USA! KONCEPT A HLAVNÍ 2 VÝZVY - LATENCE A ŠÍŘKA PÁSMA Je možné, že vývojáři teoreticky můžou obdržet od Microsoftu přístup k potenciálně neomezenému výpočetnímu výkonu, v závislosti na tom, jak moc Microsoft chce investovat do celkové infrastruktury, respektive, jak velký kousíček hodlá "uždibnout" pro Xbox One ze své globální platformy o hodnotě 13 miliard dolarů. Je tu jedno ale, vlastně dvě – latence a šířka pásma, kterých si je Microsoft jistě vědom a do budoucna se s nimi bude muset nějak poprat, protože bez překonání těchto fundamentálních překážek, nemá v podstatě šanci s cloud technologií uspět v herním byznyse a získat si tak srdíčko nejednoho příznivce své platformy, pokud Microsoft tedy nesáhne po méně konvenčních způsobech, jak využít cloud computing, ale o tom až později. Latence internetu (zpoždění) bude mít vliv na okamžité výpočetní požadavky cloudu. Když hra potřebuje něco zpracované, vyšle požadavek na server a počká na odpověď. I za předpokladu okamžitého zpracování díky několika serverům najednou, kterým v nitru jejich kostry se majestátně zahřívá procesor o 16 jádrech, naše dosavadní internetové připojení je neskutečně pomalé, pokud se bavíme v rámci výpočtů v reálným čase. Žádost konzole musí najít svou cestu přes řadu routerů a serverů, až dosáhne svého místa určení, načež pak výpočet, musí absolvovat stejně spletitou cestu labyrintů zpět. Chcete-li to uvést podrobněji, když obvody CPU dychtí po svých údajích, musí čekat několik nanosekund (miliardtinu sekundy), aby je obdržely zpátky a přes sběrnici pak teprve zpracovaly. Procesor musí čekat i stovky nanosekund, než "obslouží" data, která se na něj řítí přímo z hlavní RAMky - a tohle jsou samozřejmě špatné zprávy pro CPU a jeho efektivnost. Díky tomuhle procesu vzniká zpoždění až 100ms, v závislosti na internetovém připojení. Jelikož má hra pouze 33 milisekund k tomu, aby zobrazila 30 snímků za sekundu, tak takhle velké zpoždění logicky znamená, že cloud nemůže být ten "hlavní nástroj" pro počítání reálného času. Nikdo se přece nechce dívat, jak ve Forze se svým luxusním McLarenem to napálí přímo do mantinelů ve dvoustovce a místo spektakulární kolize, se dočká jen průjezdem samotné textury na další 3 až 4 snímky za sekundu, dokud fyzika běžící přes cloud computing se nevrátí ze serveru s informací, že jste "narazili"... Nebo ano? Čekací doba díky pomalému připojení zkrátka znemožňuje, abychom cloud využívali pro výpočet v téhle oblasti. To se ale může již změnit za nedlouho, protože Microsoft není přece žádný zasněný "loser", který si fantazíruje svoji ideu kdesi u rodičů v garáži, ale nadnárodní korporace, která disponuje velikými finančními prostředky a nejlepšími inženýry z celého světa. Díky divizi Microsoft Research a jejímu projektu DeLorean je nová éra hraní možná už za dveřmi, tedy pokud jste zasněný "loser" jako já, který věří kdejakému žvástu, že ano?! Tak tedy, "papírově" se to má takhle - DeLorean funguje na bázi predikce. Před událostí ve hře a na základě Vašich vstupů (činů), Vám platforma vypočítá předem několik variant, podle kterých "předpoví", jaký úkon se hráč chystá zrovna udělat a ve finále, potom, co Váš úkon provedete, zobrazí ten správný snímek. Popravdě, nejde o nic revolučního, podobný koncept existuje již léta a to v online multiplayerových hrách, ale tady se jedná o sofistikovanější a mnohem náročnější predikci, přičemž je schopna takhle "zakrýt" až 250ms zpoždění při cloud computingu! Bohužel, záznamy z testování rané verze DeLorean, nám běžným smrtelníkům, zůstaly zapovězeny, ale těm, co měli možnost vidět tenhle koncept i v praxi (jako testované hry posloužily Doom 3 a Fable 3), byli nadšeni - kdo by to byl řekl... Inu, tímhle se dostáváme pomalu k druhému, výraznému problému a to je šířka pásma. Akamai, poskytovatel cloudových služeb uvedl v minulém roce, že průměrná rychlost širokopásmového připojení ve vyspělém světě se snaží dosáhnout více než 8mbps - což je jeden megabajt za sekundu. To znamená, že ať už má Microsoft k dispozici výpočetního výkonu jakkoliv sebevíce, konzole bude mít k dispozici v průměru 1 mb/s zpracovaných dat, pouze. Pokud tedy porovnáme, na jaký druh pásma je konzole vytvořena, DDR3 paměť má poměr kolem 68,000 MB/s a dokonce i to nebylo dost pro konzoli, proto musela být rozšířena o eSRAM, tak nám vyjde najevo, že tudy cesta nevede. Můžete mít připojení k internetu, které je mnohem lepší než 8mbps samozřejmě, ale i super optické vlákno pro širokopásmové připojení nad 50mbps odpovídá chudokrevným 6 MB/s zpracovaných dat. To je vskutku žalostně málo, když uvážíme kolik toho může být zpracované cloudem, a to navíc ještě předtím, než vezmeme v úvahu rychlost odesílání dat (upload). Rychlost uploadu je malý zlomek rychlosti downloadu, a to výrazně může snížit objem toho, kolik informací můžeme odeslat do cloudu ke zpracování. Ovšem, je tu opět jedno ale! My nemusíme posílat data přes internet bez komprese, to zaprvé. Je to právě komprese dat, která udává směr služby OnLive, té již dokáže streamovat skvělou kvalitu obrazu hry přes naše, až hrůzostrašně pomalé internetové připojení v dnešním světě. Pokud OnLive umí takhle kouzlit s velkými objemy dat, proč nemůže být provedeno totéž s herními daty přes cloud computing od Microsoftu? Prostě proto, že cloud výpočty a streamování není ta jedna a samá věc! Problém zde je, že video může být komprimováno i se ztrátou algoritmu, které během své cesty „zahodí“ velké množství dat, již divák, respektive hráč nepostřehne ve výsledku (stream). Cloud computing si tohle dovolit nemůže, musí zůstat nezměnen, nekoprimován, nejedná se pouze o videostreaming, ale o přímou účast na dění ve hře a herní data, jako je umělá inteligence, fyzika a modely postav, které se stále adaptují na další hráčův krok, tuhle možnost „osekání“ nemají zkrátka. Existují různé, méně efektivní, ale nedestruktivní techniky kompresí, které můžou být použity jako je Lempel-Ziv (LZ), a stojí za zmínku, že Microsoft zahrnul čtyři speciální, dedikované paměti "Memory Move Engines" do svého hlavního procesoru, dvě z nich disponují zmíněnými LZ kapacitami. Jeden má na starost LZ dekódování a další LZ enkódování, což znamená, že Microsoft má takový zájem na kompresi dat, že tomu přizpůsobil i zvláštní silikon svého CPU. "Syrové" specifikace 200MB/s dekódování je jistojistě dost na zpracování libovolného množství údajů příchozím z běžného širokopásmového připojení, ale bohužel, zařazení těchto "motorů" není dostatečné ke streamování komprimovaných dat, jelikož i tak jejich úsilí by v žádném případě nevyřešilo extrémně nízkou šířku pásma ve srovnání s propustností dat samotné konzole, zapříčiněné vnitřní architekturu. Stále je jednoznačně rychlejší, načítat a dekomprimovat aktiva z "pomalých" hard disků, než načíst nekomprimovaná data, jelikož LZ komprese sice obvykle dosahuje řádově o polovinu větších výsledků "rozpůlením" dat, efektivně tak zdvojnásobuje širokopásmové připojení, ale i přesto všechno je rychlost téhle věcičky stále zanedbatelná. NA CO LZE TEDY VYUŽÍT CLOUD COMPUTING? Na spousty věcí a jejich výčet si nyní ukážeme! -Herní fyzika (aktualizace postav, výstřely a kolize) -Optimalizace -Teselace (proces, pomocí kterého se obecný polygon převádí na nepravidelnou trojúhelníkovou síť (TIN - triangular irregular network). -Texturizace -Stínování -Kalkulace dynamického světla -Post efekty -Umělá inteligence Jeden z hlavních kandidátů pro cloud computing je osvětlení. Osvětlení disponuje historii v podobě "před-výpočtů", vytvářením dlouhodobých dat, která jsou uložena na disk a posléze nahrána do hry. Brzké použití této koncepce byla přednastavená scenérie, efektivně vytvářející textury s osvětlením stanovené na jednom konkrétním místě, která sice vypadala docela realisticky, ale byla statická a pracovala pouze s neinteraktivním prostředím. Pokrokové nástroje jako je "předvýpočet záře převodem" (Pre-computed Radiance Transfer) již udělaly předvýpočetní osvětlení dynamičtějším a současný Unreal Engine 4 již tuhle vlastnost plně podporuje (Unreal Engine's Lightmass). Tahle "fítčura" dokáže počítat velké kvanta osvětlení, aniž by k tomu potřebovala reálný čas zakladní SVOGI Technologie od Epicu, která je považována za příliš výpočetně náročnou. Ačkoli cloud sám o sobě nedokáže spustit SVOGI, typ dynamického osvětlení v důsledku zpoždění a omezení šířky pásma, tak jeho "kapacity" nabízejí možnost v podobě předkalkulace dat osvětlení pro dynamické scény. Co tu máme dále? Allegorithmic's Substance Engine - https://www.youtube.com/watch?v=9vK2fl7IfvQ - který vytváří textury algoritmicky pomocí výpočtů CPU. Zde je použita matematická generace textur, postav a celkově celého prostředí, které se adaptuje a vyvíjí, "stárne" doslova. Tahle technologie by mohla být přenesena ke cloudovým výpočtům, místo toho lokálního. Off-loadingová, procedurální generace je jeden z potenciálních kandidátů na plnohodnotné využití cloudu. Představte si například prostředí ve hře Fable, kde Váš svět roste, reaguje na Vaše činy, kde se změny budou generovat paralelně po zbytek celé hry. Můžeme si také představit procesně generovanou řeč či nejrůznější zvuky. Servery by mohly simulovat vysoce náročné projevy, čímž by vytvořily velice realistické NPC "tlachání", které se přizpůsobí hře, místo toho, aby donekonečna recyklovalo ty stejné, nahrané zvukové stopy. Další možné využití lze zaměřit na prakticky neomezené úložiště cloudu. Již dnes máme jednoduché hry s využitím celého našeho světa jakožto herní prostor, jako jsou GeoGuessr pomocí Google Earth. Tím jak mapovací technologie postupuje stále vpřed, můžeme očekávat mnohem podrobnější zastoupení v budoucnosti. Project Gotham Racing byl omezen na prostředí zachyceným Bizzare, které se vešlo akorát na disk. Ale teď si představte data z aplikace Google Earth a techniku modelování od Bizzare, která by se mohla objevit společně v příští Forze. Prstem (kurzorem v tomhle případě), by jste mohli ukázat na jakékoliv, libovolné místo na světě, přenést se na něj a hned začít závodit. S cloudem by tohle bylo možné. VERDIKT Samozřejmě, že tohle všechno zní až pohádkově dobře a Vy už teď si určitě pokládáte hordu otázek ohledně toho, jak se hra dokáže vypořádat s výpadkem připojení... Tož a já se ptám, jak se Vaše hra dokáže vypořádat s výpadkem elektřiny? V dnešním světě jsme, a to ruku na srdce, všichni závislí na internetovém připojení, stejně jako na elektřině a jak časté bývají výpadky připojení k internetu, že to někdo ještě dokáže považovat za jakožto "neúnosnou" mez, která by ho omezovala v hraní her? Bez ohledu na fakt, že ne každý má přístup k vysokorychlostnímu internetu, protože většina zmíněných funkcí cloudu výše nepotřebuje velké množství dat a teoreticky by tyhle data mohla hra sbírat i z "běžného" 3G mobilního, datového přenosu, to zaprvé. Vývojáři pak navíc mohou mít záložní systémy, které nejsou závislé na připojení k internetu, jako jsou konvenční systémy osvětlení. Ano, hypoteticky, hráči hrozí, že jeho hra se v ten moment při výpadku trochu "zoškliví", něco ve stylu Rage - rozostření textur - nebo hra zalagguje při aktualizaci NPC, jako u multiplayeru, ale je to doopravdy tak velký problém, když být online a hraní online her je dnes tak již běžná věc, že se nad tím nikdo ani nepozastavuje? Copak Vy, co hrajete online multiplayer a potýkáte se s "občasným" výpadkem připojení se tím cítíte tak moc frustrovaní, že by to pro Vás byl naprostý konec světa, mít i singlplayorovou hru připojenou k internetu? Potom tu zůstává otázka, proč jste nad online hraním dosud nezanevřeli, když je to pro Vás tak "nesnesitelný" zážitek, ale Vy se ho nehodláte vzdát... Určitě si také říkáte, že pokud může mít cloud computing Xbox One, může ho mít i konkurence. Odpověď je ano i ne - konkurence by totiž musela výrazně investovat do cloudové infrastruktury, jelikož takový podíl na herních výpočtů si žádá opravdu velké množství serverů (ne, Gaikai opravdu nestačí, navíc jej hodlají pánové od Sony použít v jiném odvětví), aby dokázali pokrýt celkový nápor své hráčské základny, která je navíc mnohokrát větší než v případě Xboxové komunity, což se jeví jako velice nepravděpodobné. Jedno je ale už teď jisté. Microsoft rozhodně nezůstal jen u planých řečí a rozhodl se potenciál cloud výpočtů převést do praxe. Ve vývoji je nepřímé pokračování open world hry Crackdown - https://www.youtube.com/watch?v=x1ALndqfagEn - které hodlá využít potenciál cloudu pro kolize objektů, exploze a celkovou fyziku. Poté tu máme minimálně tři další, dosud neoznámené projekty, které taky zakomponují do své "činnosti" nějakým způsobem cloud computing a nám tedy nezbývá nic jiného, než jen čekat. V případě Crackdown to nebude již příliš na dlouho. Na závěr ještě přidám takovou pomyslnou třešničku na dortu. Firma OTOY z amerického Los Angeles, která se specializuje na cloud a věnuje se své technologii Brigade engine, představila již třetí verzi svého enginu, která má do her za pomoci cloudu přinést fotorealistickou grafiku. Systém by se podle jejich slov dal jednoduše implementovat do populárních herních enginů jako je Unreal Engine nebo Unity a nahradit v nich tak DirectX či OpenGL. Výsledkem by byla fotorealistická grafika bez větší zátěže na hardware, kdy by si hráč na obrazovce nebo televizi mohl užívat dosud nevídaných detailních efektů, včetně lepší simulace světla a rozsáhlejších herních světů - zde jsou odkazy: https://www.youtube.com/watch?v=abqAanC2NZs a https://www.youtube.com/watch?v=aKqxonOrl4Q P.S: To zrnění je způsobeno samotným (ne)výkonem grafické karty Nvidia GTX Titan. Ano, čtete správně, ani jedna z nejvýkonnější grafických karet nedokáže dosud zobrazit fotorealistické prostředí lokálně, běžícím v reálném čase v HD rozlišení (!!!) bez neduhů.
 
 
 

KOMENTÁŘE

    Pro přidání komentáře je nutné být registrován a přihlášen.
     
    8

    BioShock: The Collection (Nintendo Switch)

    9

    F1 2020

    6

    Assetto Corsa Competizione

    7

    Minecraft Dungeons

    7

    Mafia II: Definitive Edition

    8

    Marvel’s Iron Man VR