Xbox One: o blocích GPU navíc, dynamickém rozlišení a virtualizaci [rozhovor]

0

Máte-li dostatečnou pasivní znalost angličtiny a zajímají vás podrobnosti o hardware i software v herní konzoli Xbox One, toto čtení byste rozhodně neměli vynechat. Server Eurogamer.net zveřejnil kompletní přepis velmi rozsáhlého rozhovoru, který se odehrál v srpnu na veletrhu Gamescom, prakticky všechny informace v něm ale doposud nebyly zveřejněny. Na otázky odpovídali Andrew Goossen, jeden z architektů Xboxu One, který ví první a poslední o jeho software, a Nick Baker, vedoucí týmu hardwarové architektury.

Velká část rozhovoru se věnuje paměťovému subsystému (připomínáme, že Microsoft zvolil hlavní paměť typu DDR3 a 32 MB rychlé paměti ESRAM integrované v procesoru) a jak souvisí s postupem vykreslování scény. Zpovídaní se nevyhli ani srovnání s konkurenčním Playstationem 4. Je velice obtížné vybrat to nejzajímavější z díla, které čítá bezmála devět tisíc slov. Čtení je to ale velice záživné a já ho zhltl takříkajíc jedním dechem. Zmíním tedy jen několik věcí, které nás (mě a kolegu Honzu Olšana) zaujaly.

Nadbytečné jednotky v GPU

Xbox One má grafické jádro architektury AMD GCN s 12 výpočetními bloky (Compute Units). Ve skutečnosti je jich v čipu 14, to kvůli zlepšení výtěžnosti, kdyby některý blok zasáhl výrobní defekt. Pro srovnání, GPU Xenos v Xboxu 360 mělo (minimálně zpočátku) fyzicky 64 unifikovaných shaderů, z nichž ale používalo pouze 48.

 

28nm výrobní postup je už dobře zaběhnutý a defektů asi mnoho nebude, možnost odemknout zbývající dva bloky tedy byla nasnadě. Microsoft to zkoušel, když už měl k dispozici vzorky čipů a betaverze prvních herních titulů. Ale protože byl čip navržen tak, aby podával vyvážený výkon s 12 bloky shaderů, zvýšení výkonu bylo zanedbatelné a zdaleka se neblížilo 17 %, což je přírůstek hrubého teoretického výkonu. Jako účinnější krok se ukázalo zvýšení frekvence celého grafického jádra z 800 na 853 MHz. To je sice nárůst jen o 6,6 %, ale rychlejší jsou všechny části grafického jádra a také paměť ESRAM, která běží na synchronním taktu s GPU.

Každá hra je virtuální stroj

Hardwarové specifikace konzole zůstávají po dobu její morální životnosti prakticky neměnné, nepočítáme-li přechody na novější výrobní technologie ve jménu nižší ceny a spotřeby. Software se stále vyvíjí, přitom ale není možnost zajistit, že aktualizace knihoven na novější verzi nerozbije kompatibilitu s hrou, která byla naprogramována se starší verzí. Microsoft to vyřešil tak, že každá hra je jako virtuální stroj, nese si s sebou vlastní operační systém (Xbox OS) a knihovny. Tak by mě zajímalo, jestli nějaký šikovný hacker přijde na to, jak tímhle způsobem na Xboxu rozchodit plnohodnotná desktopová Windows, nebo klidně Linux. (Vzhledem k nestandardním úpravám hardware, o kterých je v interview také řeč, to asi nebude tak triviální.)

Rozlišení lze měnit dle potřeby

Nedávno jsme se zmínili o tom, že hry pro Xbox One budou vykreslovány v různých nativních rozlišeních, kromě plného 1080p též v 900p nebo 720p. Nařídit vývojářům, v jakém rozlišení mají hry běžet, se Microsoft pokoušel u Xboxu 360 a záhy požadavek zrušil.

Jenže sami určitě víte, že ve hrách se často střídají graficky náročnější lokace s těmi méně náročnými, takže podle nastavení úrovně detailů se vám hra střídavě škube a pak zase běží s výkonnostní rezervou. Microsoft na tohle myslel a tak Xbox One dává vývojářům možnost přepínat rozlišení během hry. Na PC by bylo dost nepraktické, kdyby se vám uprostřed hraní přepínal displej, ale Xbox One obraz vždy hardwarově škáluje do Full HD. Kromě toho jsou hře přístupné dvě vrstvy pro vykreslování a i když 3D scéna bude renderována v 720p, prvky HUD mohou být stále zobrazeny v plném rozlišení.

Rozhovor najdete na serveru EuroGamer.net.

Xbox One: o blocích GPU navíc, dynamickém rozlišení a virtualizaci [rozhovor]

Ohodnoťte tento článek!