Gen11 è il nome dell’architettura grafica integrata nei processori Intel Core di decima generazione Ice Lake realizzati con processo produttivo a 10 nanometri.
Rappresenta un grande passo avanti rispetto alle GPU integrate nei processori Intel precedenti, ed è il primo segnale di una rinnovata attenzione di Intel al comparto grafico che culminerà nel 2020 con l’ingresso - o meglio, il ritorno - nel mondo delle GPU dedicate con l’architettura Xe, anche chiamata Gen12.
I primi dettagli su Gen11 risalgono all'Architecture Day dello scorso dicembre, dove Intel spiegò che stava lavorando per migliorare drasticamente le prestazioni della grafica integrata dei propri processori: l'obiettivo era quello di arrivare a 1,12 teraflops con calcoli FP32 e 2,25 teraflops con calcoli a FP16, il tutto consumando il meno possibile.
Si tratta di dati che riguardano la migliore incarnazione di Intel Gen11, con 64 EU (Execution Unit) con frequenza fino a 1100 MHz.
La grafica Gen11 sarà disponibile anche in diverse configurazioni, anche se sarebbe meglio scrivere “è disponibile”, in quanto Intel l’ha implementata nei primi processori Ice Lake, destinati al segmento mobile, parte delle serie Y e U.
A seconda del modello di processore - potete approfondire qui - Intel implementa la GPU Gen11 con 32, 48 o 64 EU attive con frequenze da 900 MHz a 1,1 GHz. Intel afferma che le migliori prestazioni grafiche si ottengono adottando memoria LPDDR4X-3733 per estrarre un bandwidth di 50-60 GB/s.
Architettura
Per la nuova architettura, Intel ha adottato una disposizione modulare con "subslice" che ospitano otto execution unit (EU). L’azienda ha tuttavia ampliato il progetto portandolo a 8 subslice, quindi a un massimo di 64 execution unit (EU), un netto passo avanti rispetto ai 24 EU della Gen9.
Per quanto riguarda le execution unit (EU), troviamo un paio di SIMD floating-point unit (ALU) che supportano sia operazioni in virgola mobile che integer. Intel afferma che le ALU sono in grado di svolgere quattro operazioni FP32 o integer, o fino a otto operazioni FP16. Questo equivale a 16 operazioni FP32 per clock, o 32 operazioni FP16 per ciclo di clock.
La GPU può processare due pixel per ciclo di clock. Un'interconnessione ad anello (ring) in Ice Lake fa da ponte tra i core x86, quelli della GPU, la LLC (Last Level Cache) e le funzioni "system agent" (PCIe, memoria e controller video). La Last Level Cache è condivisa tra i core grafici e quelli x86. Il SoC ha numerosi domini di frequenza (clock domain) suddivisi tra i core x86, la grafica e l’interconnessione ring.
La nuova architettura Gen11 supporta il tile-based rendering oltre all'immediate mode rendering, e questo aiuta a ridurre la richiesta di memoria durante alcuni carichi di rendering.
La GTI (Graphics Technology Interface) collega la GPU al resto del SoC, come memoria LLC e DRAM, e Intel ha migliorato le prestazioni da 32B/clock a 64B/clock per le operazioni di scrittura, ridefinendo anche le code interne per migliorare la latenza e il bandwidth.
La GPU può leggere e scrivere verso l’anello a 64B/clock, mentre la CPU può solo leggere e scrivere a 32B/clock, il che significa che la GPU ha un percorso più veloce verso la LLC condivisa a sua disposizione. La GPU ha 3 MB di cache L3 dedicata che serve come soluzione intermedia tra subslice e GTI, e ha accesso a 0,5 MB di memoria locale condivisa separata per migliorare il parallelismo.
Ogni slice ospita una "3D Fixed Function Geometry", otto sub-slice che contengono gli EU e uno "slice common" in cui ci sono i vari blocchi a funzione fissa e e che scrivono nella cache L3 dello slice.
Intel ha implementato inoltre algoritmi di compressione della memoria migliorati.
Altri passi avanti prevedndo un nuovo engine Quick Sync Video HEVC che offre una riduzione del bitrate fino al 30% rispetto alla Gen9 (con la stessa o migliore qualità visiva) e la capacità di gestire più flussi video 4K e 8K consumando meno. Intel ha anche migliorato la decodifica, con una decodifica VP9 che sale a 10 bit (da 8) per supportare i contenuti video HDR.
Ogni sublisce ha un’unità local thread dispatcher e le proprie cache instruction ad alimentarlo. Una memoria condivisa locale (shared local memory, SLM), un’unità 3D texture sampler, la media sampler unit e la dataport unit completano ogni subslice.
Uno sguardo più ravvicinato alla progettazione della memoria locale condivisa (shared local memory, SLM), che alimenta gli otto UE in ciascuna sottosezione, rivela che Intel ha introdotto SLM nel subslice per ridurre la contesa quando si accede in modo simultaneo alla cache L3. La prossimità di SLM con gli EU aiuta anche a ridurre la latenza e migliora l'efficienza.
Sul fronte display, la grafica Gen11 supporta tre pipeline 4K suddivise tra DisplayPort 1.4 HBR3 e HDMI 2.0b. C’è anche il supporto per 2 x 5K60 o 1 x 4K120 con profondità colore a 10 bit.
VRS, Adaptive Sync e integer scaling
La grafica Intel Gen11 supporta le ultime API come DirectX 12, Vulkan e ovviamente OpenGL. Il supporto DX12 porta con sé anche la compatibilità con la tecnologia Variable Rate Shading (VRS), che potete approfondire qui.
Il Variable Rate Shading consente agli sviluppatori di ridurre selettivamente il tasso di shading (ombreggiatura) nelle aree dell’immagine che non impattano sulla qualità visiva, permettendo così di ottenere maggiori prestazioni e/o ridurre i requisiti di gioco.
VRS permette anche di fare anche il contrario, ovvero usare una maggiore velocità di shading solo nelle aree in cui è più importante, favorendo una qualità visiva ancora migliore. L’unico problema, se così si può dire, è che richiede supporto dagli sviluppatori di giochi.
Intel sta già lavorando con Epic per l’integrazione nell’Unreal Engine, e ha già collaborato con Firaxis su Civilization 6. Secondo la casa di Santa Clara questa tecnica permette di avere prestazioni migliori fino al 30%, senza impatto significativo sulla qualità.
Adaptive Sync è lo standard VESA per definire il refresh rate variabile ed è in qualche modo equiparabile al FreeSync. In realtà FreeSync coinvolge l'intera catena di rendering (GPU, protocollo DisplayPort e display), mentre l’Adaptive Sync è un'aggiunta al protocollo DisplayPort. Si può dire l'Adaptive Sync è un componente del FreeSync e che quest'ultimo costruisce ed espande sulle fondamenta di Adaptive Sync.
La grafica Intel Gen11 supporta anche l’integer scaling, anche noto come nearest neighbour interpolation. Si tratta di una tecnica di interpolazione che dovrebbe migliorare la qualità dell’immagine, specialmente di testo, linee e pixel art quando ad esempio si vuole vedere un contenuto 1080p su un display 4K nativo.
Tra le ragioni per usare risoluzioni inferiori a quelle native troviamo l’uso di vecchi giochi (retrogaming) su monitor moderni e il miglioramento del frame rate – non tutti hanno una scheda video capace di gestire i titoli in 4K ad alta velocità.
Finora è stata applicata l’interpolazione bilineare o bicubica per scalare un segnale inferiore alla risoluzione nativa del display. La qualità d’immagine però ne risente, specie nei casi citati, con i pixel che si fanno uniformi e l’immagine che risulta pastosa, sfocata (blur).
Integer scaling moltiplica ogni pixel per un numero intero. Nel caso del passaggio da Full HD a Ultra HD, ogni pixel del segnale diventa quattro pixel visualizzati con l’esatto valore del colore, preservando l’integrità del segnale originale e la nitidezza.
Analogamente, con altre risoluzioni il segnale viene ridimensionato al numero intero più grande possibile, per fornire l’immagine visualizzata più ampia senza altre alterazioni del segnale.
Prestazioni
Al momento non abbiamo ancora provato un portatile con CPU Ice Lake con GPU integrata Gen11 per analizzarla, ma potete vedere alcuni test preliminari realizzati dai nostri colleghi statunitensi in questo articolo.
I colleghi affermano che "il vantaggio maggiore lo riscontriamo sul fronte grafico. La GPU integrata Gen11 è certamente un grande passo avanti rispetto alla precedente generazione. Non potete ancora giocare titoli tripla-A ad alta risoluzione, ma le migliori prestazioni permettono di giocare a titoli eSports a risoluzioni inferiori”.
In queste slide potete vedere le proiezioni di Intel, sia rispetto alla Gen9 che alla grafica dell'APU AMD Ryzen 7 3700U. Intel promette un frame rate mediamente migliore dell’80% nei titoli con la versione migliore della grafica Iris Plus di nuova generazione rispetto a una CPU Core di ottava generazione con grafica Gen9 (che ricordiamo ha un massimo di 24 EU a 1150 MHz). Questo alla risoluzione Full HD, con dettaglio medio e bassi.