Traduci gli articoli

mercoledì 14 dicembre 2016

In-Depht Xbox Scorpio: memoria di sistema e struttura del sistema operativo


Di Project Scorpio si conosce ancora poco o nulla e, se tralasciamo i pochi dati forniti ufficialmente da Microsoft, circola ancora nell’aria un alone di grande mistero attorno alla futura Xbox.

Ufficialmente Project Scorpio monterà una GPU capace di erogare 6 TFLOPS di potenza “bruta”, una CPU a 8 core e una banda passante della memoria di oltre i 320GB/secondo. Caratteristiche che la renderebbero una console capace di gestire il 4K nativo senza “tagli” rispetto alle attuali produzioni per Xbox One, aumentando anche il refresh video a 60 fotogrammi per secondo con dettagli settati su alti/ultra prendendo come riferimento il PC.
Ci si interroga se i 6 TFLOPS siano sufficienti per gestire tutto ciò senza problemi, ci si chiede se saranno numeri finali, ci si chiede che tipo di tecnologia sfrutterà Scorpio per competere con i sistemi del futuro (PS5?) e che non sia un hardware “vecchio” quando verrà lanciato sul mercato tra un annetto circa.

Domande più che legittime, domande che agli albori di Xbox One fecero emergere contrastanti discussioni sui social ma che, oggi, hanno finalmente trovato una risposta dopo una lunga gestazione del software, del sistema operativo, dell’utilizzo della eSRAM, dello sfruttamento dei chip di scarico grazie alle DX12 e molto altro ancora. Insomma, senza ritornare a vecchi discorsi, basti citare le ultime produzioni quali Gears of War 4 e Forza Horizon 3 per capire di che pasta è fatta la bistrattata One (se poi volete continuare a dire che la GPU sia una AMD Bonaire fate pure, peccato che i fatti vi abbiano smentito…cari signori del Digital Faulty ed espertoni del web) e, anche sul versante dei multiformato, abbiamo avuto modo di assistere ad una crescita esponenziale per quanto riguarda le prestazioni della macchina.

Il resolution-gate, diatriba faziosa e mai sopita, è un ricordo del passato e visivamente i titoli per PS4 sono praticamente uguali a quelli di Xbox One, anche se, per onore di cronaca, qualche sottile differenza permane ancora. Ma i motivi li conoscete bene e non vorrei ripetermi (ok lo faccio: engine ancora non ottimizzati al meglio, DX12 sfruttate non nativamente ma solo come porting, scarsa conoscenza del PIX per la eSRAM ecc.). Ma ci siamo quasi dai.



Torniamo però a Project Scorpio, perché di cose ne cambieranno, e molte, rispetto alla struttura hardware di One che tanto ha fatto tribolare gli sviluppatori. Innanzitutto, e ormai è cosa praticamente confermata, la prossima Xbox sarà equipaggiata con gli ultimi derivati della tecnologia AMD, vale a dire Zen per la CPU e Vega per la GPU, fuse in una APU che sarà il cuore della console, con tutte le dovute customizzazioni del caso.

X-Rays: Ciao Tom, ci si sente poco, ma puntiamo sulla qualità delle info, giusto?

Tom: Ovviamente mio caro, lo sai, ti segnalo unicamente la presenza di nuove informazioni, non voglio perdere tempo e rischiare troppo.

X-Rays: Deduco quindi che hai delle nuove informazioni su Scorpio, dico bene?

Tom: Dici bene!

X-Rays: Sono tutto orecchie, vai pure!

Tom: E’ tutto! (ride)

X-Rays: Ah, beh una info che farà sicuramente piacere ai fan…

Tom: Si scherza, suvvia! Torno serio, Microsoft sembra aver trovato il giusto compromesso sulla memoria di sistema. Come ricorderai si ipotizzavano diverse configurazioni, in base a disponibilità sul mercato, costi ed efficienza. All’inizio ti parlai di HBM, di soluzioni ibride o derivati di eSRAM a là Xbox One. Ebbene dalle ultime informazioni in mio possesso e in base alle ultime slide commissionate posso dire con discreta convinzione che Project Scorpio monterà sì un sistema ibrido di memorie, ma non come potevate immaginare.

Niente DDR4, niente LPDDR, niente eSRAM o EDRAM, niente HBM o partizioni con doppia soluzione. Il pool principale di memoria sarà costituito da 12 GB di tipo GDDR5X (JESD232 Graphics Double Data Rate (GDDR5X) SGRAM), con banda di circa 345 GB/secondo, configurate su 12 chip on-board da 1GB l’una, con interfaccia a 256 bit. Saranno prodotte da Micron e fanno parte della seconda generazione di memorie GDDR5X, con chip di dimensioni di 14x10mm che lavoreranno in modalità QDR (quad data rate) a 1,35 volt. Per dire, è la stessa tipologia di memoria video utilizzata nelle attuali NVIDIA GTX 1080, scelta anche per via del minore calore generato rispetto alle vecchie GDDR5.



Tom: Prima che mi interrompi, ti spiego perché Microsoft ha optato (almeno stando ai documenti del 16 novembre 2016) per questa configurazione: gran parte del SoC verrà dedicato alle CU della parte relativa al chip grafico, e rispettivi stream processor, in modo tale da inserire nel die quante più possibili Compute Unit, evitando anche una generazione eccessiva di calore e lo spreco di spazio. La eSRAM di Xbox One prende spazio nel SoC della console, poiché integrata nel SoC stesso, lato GPU. Con Scorpio a Redmond hanno voluto invertire la tendenza copiando un po’ Sony con le GDDR5 di PS4, ma ovviamente ampliandone le caratteristiche.

Il SoC in altre parole, sarà dedicato esclusivamente al duo CPU e GPU senza orpelli di mezzo. Ma c’è di più: i 12 GB di sistema sono stati resi possibili proprio grazie all’introduzione delle GDDR5X; con soluzioni ibride tipo DDR4 ed eSRAM si sarebbero creati anche dei grossi problemi di compatibilità con il chip grafico basato su Vega e “studiato” da AMD per l’utilizzo delle HBM.

Con le GDDR5X la struttura di base di Vega non verrà modificata così profondamente rispetto ad una configurazione che si avrebbe avuta invece con memorie “miste” o con memorie aggiuntiva di boost. In altre parole spazio, calore, rapporto costo/prestazioni sono state le parole d’ordine, e la configurazione finale ricadrà sulle GDDR5X, le uniche che, al momento, ti permettono grandi prestazioni a latenza tutto sommato bassa, e meno grattacapi.



X-Rays: Con questa affermazione ti stai giocando gran parte della tua credibilità, Tom!
Tom: Riporto solo quello che vedo, quello a cui lavoro, quello che Microsoft ci commissiona di fare. Questa è, dall’ultimo recente briefing, la soluzione adottata per Scorpio, salvo eventuali modifiche ovviamente, che in questo contesto possono essere eseguite anche poco prima della produzione di massa.

X-Rays: Riassumendo, avremo 12 GB di GGDR5X?

Tom: Sì, per quanto concerne la video ram principale, che sarà però coadiuvata da un altro, piccolo pool di memoria che sarà comunque “estraneo” dal pool di sistema. Ancora non è certo questo punto ed è tutt’ora oggetto di discussione, ma ai 12 GB potrebbero essere affiancati ulteriori 1-2 GB di memorie a bassa latenza, tipo DDR3 o 4 che andranno a supporto per alcune operazioni “non grafiche” per la CPU. Mi spiego meglio: la RAM aggiuntiva servirebbe per dare una mano al pool delle GDDR5X per le operazioni del Sistema Operativo e la gestione della realtà virtuale.

Perché dico questo… perché Scorpio avrà lo stesso, identico sistema virtualizzato presente in Xbox One ma con l’aggiunta di un layer in più che sarà adibito esclusivamente per l’elaborazione dei dati per la realtà virtuale (presumo quando ci sono collegati caschi VR o affini). Ho trovato finalmente riferimenti al Kinect (nei primi slide non ne veniva fatta menzione!) ed è molto probabile che Scorpio possa supportare la periferica di Xbox One per aumentare sensibilità e tracciabilità quando si utilizza un visore di realtà virtuale. Non so perché ma credo che Kinect tornerà molto utile in quest’ottica, anche se al momento non ho particolari certezze.

X-Rays: Quindi un totale di circa 12-14/15 GB di memoria, con il pool diciamo “esterno” di DDR che sarà chiamato in causa solo per le operazioni di base del SO e per la realtà virtuale, dico bene?

Tom: Si, più o meno. Dalle slide gli sviluppatori avranno accesso a 10 GB di memoria da allocare unicamente per i giochi, con i restanti 4 (comprese le DDR) per altri ruoli (partizioni OS e realtà virtuale). La struttura dell’architettura del Sistema Operativo di Scorpio sarà la seguente, e ricorda molto da vicino quello di One. Ci saranno tre grosse partizioni strutturate in Host OS, Shared Partition ed Exclusive Partition.

Tom: Host OS è il blocco Hyper-V che farà da collante a tutte le altri partizioni, poi ci sarà una partizione esclusiva dedicata ai giochi (Exclusive Game) con due ulteriori sotto sistemi vale a dire Exclusive OS (che servirà a Scorpio per avere piena retrocompatibilità con Xbox One, anche per i vecchi giochi che gireranno così in maniera nativa come se fossero “fisicamente” su One, in questa, definiamola zona, verrà allocata una parte piccolissima della GDDR5X che simulerà perfettamente il funzionamento della eSRAM) ed Exclusive VR (un VR host che, gestito dall’hypervisor, lavorerà con la partizione Exclusive Game).

Tom: Infine ritroveremo una la Shared Partition che includerà il funzionamento primario della console, le applicazioni, i servizi principali e le routine generiche Xbox (periferiche ecc.). Ogni singola partizione dovrebbe avere accesso a 1GB di memoria.

X-Rays: Molto, molto interessante, e questa parte delle partizioni dell’OS mi fa pensare che Scorpio punterà forte sulla realtà virtuale, e credo che vi sarà compatibilità nativa con i visori Oculus Rift, HTC ViVe e tutte le periferiche certificate Windows 10, Hololens inclusi.
Tom: Lo credo anche io.



X-Rays: novità sul fronte grafico e computazionale?

Tom: Nessuna nuova info, la configurazione finale è quella “teorizzata” mesi fa oramai, si sta ancora “giocando” sulle frequenze e sui TFLOPS finali che, a questo punto, posso considerare definitivi. 6 furono quelli di partenza, ma quelli definitivi dovrebbero sfiorare i 6.7 TFLOPS. Lo ripeto per chi si è perso le puntate precedenti: SoC basato su Zen e Vega, opportunamente modificato da Microsoft per le nuove memorie e le nuove istruzioni, il tutto sarà basato sulla nova tecnologia AMD GCN 4.0.
La GPU avrà 64CU complessive, di cui 54 attive e 8 disattive per ridondanza, con frequenza di clock di circa 950MHz per un totale di 3584 stream processor e 64 ALU, ed ecco che ritroviamo i circa 6.7 TFLOPS. La CPU invece sarà costituita da 4 core fisici per la gestione di 8 core logici, con frequenze di 2,00 GHz per core.

Come consumi massimi la console assorbirà tra i 300 e 330 watt per ora. Tieni presente che per questa “bestia” di console le frequenze sia di memorie che della GPU/CPU non varieranno di molto a questo punto, onde evitare la generazione di calore eccessivo.

X-Rays: Se fosse così sarebbe una configurazione davvero impressionante. Quanto è attendibile tutto ciò? Potremmo scommetterci?

Tom: Io vedo e riporto, non sono un tecnico, ti dico solo le informazioni a cui ho accesso e non lavoro nel team di Microsoft, posso però dirti che in fase di progettazione di un qualunque tipo di hardware, che va da uno stereo ad una TV, ci sono tantissimi elementi e componenti che possono essere soggetti a pesanti modifiche anche last minute. Per dirti, se vogliamo essere precisi, al novembre 2016 quella sopracitata è la configurazione di Scorpio.

Sarà quella definitiva? Non ci scommetto, potrebbe essere anche migliore… o peggiore se si dovessero presentare dei problemi (la dissipazione non ce la fa, si tagliano le frequenze ad esempio, con One, per dire, venne adottata la strategia opposta, dissipava anche più del dovuto e hanno incrementato il clock di CPU e GPU). Al momento, e te lo voglio ribadire, il progetto è solo su carta, non c’è nulla di concreto se non delle start-up simili a quella che sarà Scorpio per quanto riguarda l’hardware.

Siamo ancora in piena fase progettuale, non esistono prototipi poiché se le cose verranno confermate, la produzione partirà solamente a primavera 2017 inoltrata. I primi kit verranno diffusi invece a inizio 2017, e solo allora potrò fornirti dei dati più “concreti” e verosimili.

X-Rays: Tutto chiaro! Sei stato gentilissimo Tom, grazie ancora!

Tom: A te, ciao!

X-Rays