3D  Prophet  4500

32 MB  vs.  64 MB

Autore:  Nicola Colavitto

Data:  02/08/2002

Prezzi:  89,60 per la vers. 32MB, €102,60 per quella da 64MB (prezzi iva inclusa)

 Introduzione:

 Sin dai tempi di 3dfx si era capito che il settore della grafica 3D sarebbe stato, di lì a poco, un settore rivoluzionario, che avrebbe trasformato anche il semplice PC casalingo in una sorta di console da gioco. Basta pensarci un attimo per accorgersi di come il settore si sia sviluppato in pochi anni, si siano ridotti i costi  e centuplicata la potenza di calcolo, nonché gli effetti grafici visualizzabili a video.

Oggigiorno sono diverse le offerte dei costruttori di schede grafiche, in particolare si punta sempre più alla soddisfazione delle esigenze del cliente e perciò si dotano, schede con stesso chip grafico, di diversi optional più o meno utili, primo tra tutti il diverso quantitativo di memoria video. L’anno passato ha visto la conferma di schede con un quantitativo minimo di memoria di 32MB; oggi, data la complessità delle applicazioni 3D (in particolare ludiche), il quantitativo minimo di memoria tende ad essere 64MB e, con ogni probabilità, il 2003 sarà l’anno dei 128MB.

Scopo di questa recensione è vedere come quantitativi diversi di memoria video influenzano le prestazioni grafiche. In particolare la nostra analisi si soffermerà su due schede che differiscono solo per la memoria montata (32MB vs. 64MB) ma, per il resto, sono del tutto identiche. Stiamo parlando delle 3D Prophet 4500 prodotte da Hercules, la sezione grafica di Guillemot, che montano il penultimo chip della terza generazione di PowerVR: il Kyro2 realizzato da STMicroelectronics. Per questo scopo abbiamo pensato di non soffermarci su alcuni aspetti indispensabili in una “normale” recensione (dotazione, driver, test FSAA) , ma di focalizzarci sull’aspetto prestazionale delle due schede.

 Specifiche:  

Memoria

32MB oppure  64MB  SDRam

Bus di memoria

128 bit

Processo produttivo

0.15mm

Frequenza chip e memoria

175Mhz / 175Mhz

AGP

2X

Numero pipeline

2

Texture per ciclo di clock

1

Texture per ciclo di rendering

8

Fill Rate

350Mpixels/sec  -  350Mtexels/sec

Banda Passante

2.8 Gb/sec

FSAA

2x/4x Supersampling

Ramdac

300Mhz

Risoluzione massima

1920x1440@75 Hz

 Caratteristiche:

 Oggi la crescita delle prestazioni delle schede grafiche è meno che proporzionale rispetto all’aumento della potenza di calcolo perché si è consapevoli che la tecnologia che c’è alla base è ancora da affinare. In particolare il tallone d’Achille delle moderne schede 3D è la banda passante della memoria video: siamo arrivati a bus di 128 bit (anche 256 bit con il nuovo Parhelia e il nuovissimo Radeon 9700) che permettono trasferimenti di diversi Gb al secondo. Perciò sul mercato troviamo chi si è adeguato alla corsa sfrenata all’incremento del bus e delle frequenza della Video Ram introducendo, al contempo, tecniche di gestione ottimizzata dello z-buffer. Ma troviamo anche chi ha battuto una strada totalmente distinta. Stiamo parlando di PowerVR, proprietaria della tecnologia di rendering che è alla base dei chip Kyro e Kyro2 (nonché del nuovo Kyro2 SE) che ha compreso come non vi sia la reale necessità di allargare la banda (incrementando i costi) così come di sfruttare memorie DDR (DoubleDataRate) per raddoppiare la frequenza effettiva di trasferimento.

L’idea di PowerVR si basa su un’intuizione avuta qualche anno fa, tanto semplice quanto geniale: il Tile Based Rendering.

In un processo di renderizzazione 3D tradizionale (Immediate Mode Rendering), dopo aver prelevato e modificato le geometrie e applicati gli effetti luce (T&L), si passa al clipping (cancellazione delle parti di superfici non visibili a video) ed infine alla resterizzazione e rendering. In questa fase si applicano ai pixel le diverse texture contenute in memoria (texture&shade) e successivamente si passa alla lettura dello z-buffer (ulteriore area della memoria che registra il parametro di profondità, cioè la quota, dei texel appena ottenuti).  

Così si visualizzano solo i texel visibili a schermo (e non coperti da altri) ed infine, generata l’immagine che sarà visualizzata, la si memorizza nel frame buffer pronta per essere visualizzata.

Da questi passaggi si comprende come, indipendentemente dal fatto di essere visibili o meno, molti pixel vengono elaborati inutilmente occupando notevoli risorse e banda passante. Allora si può semplicemente pensare di invertire la successione tra “depth test” (analisi profondità dei pixel e texturizzazione in modo da poter, prima, selezionare solo i pixel realmente visibili, e poi richiamare solo le texture necessarie (occupando molta meno banda) ed elaborando molti meno dati.

Ma PowerVR non si è fermata a questo. La sua genialità risiede nell’idea di dividere lo schermo in tile (tessere) di dimensione fissa (32x16 pixel) che vengono analizzate dal chip che “vede” quali saranno i pixel realmente visualizzatio esaminando una “display list” o “triangle list” creata poco prima. A questo verranno prelevate dalla memoria solo le texture realmente utilizzate, applicate a poligoni o a porzioni di questi. Tale processo è detto Deferred Texturing proprio perché la texturizzazione è effettuata in differita, dopo il depth test. Raccolte tutte le tessere nel frame buffer, l’immagine è pronta per essere visualizzata.

I vantaggi sono numerosi:

1 – Dovendo elaborare una piccola porzione di immagine (un tile di 32x16 pixel), tutte le  operazioni possono essere svolte direttamente “on-chip” sfruttando un buffer interno al Kyro ad alta velocità senza frequenti e dispendiosi accessi alla memoria dovuti all’adozione di z-buffer e frame buffer esterni. Quindi non esistendo un’area di memoria dedicata ai due buffer di cui prima, si può dedicare più banda al trasferimento delle texture.

2 – Poiché tutte le operazioni di z-buffer, pixel blending, stencil buffer sono effettuate “internamente”, vengono realizzate ad elevata precisione (sempre a 32 bit) senza intaccare le prestazioni; inoltre, anche per quanto concerne la qualità dell’immagine si opera sempre a 32 bit (Internal True Color) e il risultato è una qualità d’immagine forse anche superiore a quella “leggendaria” di Matrox.

3 – La scalabilità. Grazie alla divisione dello schermo in tiles e all’eccellente gestione della banda di memoria, l’architettura PowerVR è facilmente implementabile in circuiti integrati, dove la memoria centrale è condivisa tra processore e chip grafico. Grazie alla divisione in tiles, la potenza di calcolo è facilmente incrementabile anche con più di due processori che lavorano in parallelo e, tenendo conto del metodo con cui il Kyro evita l’overdraw (stratificazione di superfici con conseguente presenza di parti non visibili), è corretto affermare che la potenza del Kyro è effettiva. Infatti se teniamo conto che la complessità di profondità (numero di pixel sovrapposti) dei giochi moderni arriva anche a tre o quattro, il Kyro è come se avesse una potenza (in termini di Mpixels/sec) triplicata o quadruplicata. Si è calcolato che, con la maggioranza dei giochi oggi in commercio, la potenza di un Kyro2 (che nominalmente permette 350Mpixels/sec) si attesta attorno ai 1050Mpixels/sec. Questa è la spiegazione di come un chip così “povero” possa intaccare le prestazioni di chip ben più potenti e blasonati (e costosi). Dimostrazione dell’enorme potenzialità di tale architettura, è l’accordo tra Imagination Tecnologies (di cui PowerVR fa parte) e Intel. Il colosso statunitense dei processori, consapevole dell’efficienza di tale architettura, vuole implementarla nei propri chipset integrati che verranno alla luce nel prossimo futuro.

Da questo grafico emerge come il Kyro riesca a sfruttare anche solo un terzo della banda passante rispetto agli usuali sistemi di rendering 3D. 

Altra caratteristica interessante è la possibilità di applicare otto texture per ciclo di rendering. Questo significa che in caso si debbano applicare quattro texture, il Radeon7500 (che ne applica tre per ogni ciclo) dovrà calcolare due volte la geometria della scena, mentre il Kyro2 no. Inoltre si possono così rendere meglio superfici più dettagliate e fotorealistiche, miscelando texture diverse e particolari tipi di luce. Sensibili, allora, sono i vantaggi in tutti quei giochi che fanno un uso intensivo di texture (con ulteriore risparmio della banda passante).

Ma il Tile Based Rendering ha, ovviamente, anche dei lati negativi, primo tra tutti il decadimento delle prestazioni nel caso di scene complesse cioè con elevato numero di poligoni. Queste inducono il Kyro2 a creare triangle list “pesanti” da elaborare e dove i pochi “cavalli” del chip (350Mpixels/sec) si fanno sentire in corrispondenza anche di “corposi” accessi alla memoria. E’ in queste occasioni che la mancanza di un’unità interna di T&L si fa sentire (carenza colmata con il Kyro2 SE anche se i driver attualmente in circolazione non permettono di saggiarne ancora le potenzialità). Inoltre è da ricordare l’approccio del Kyro nei confronti delle superfici trasparenti: è di tipo tradizionale e quindi, introducendo overdraw, “pesa” fortemente sul lavoro del chip.  

Le schede:

 Le due schede differiscono, oltre che per il colore del PCB (verde per la versione a 32MB e blu per quella a 64MB), per la diversa distribuzione dei banchi di memoria. Nella versione da 32MB, questi sono disposti in quattro chip (marchiati Samsung da 5ns per ambedue le versioni) di 8MB ciascuno su un lato del PCB. Al contrario in quella a 64MB si notano altri quattro chip da 8MB sull’altro lato, disposti a specchio con i primi rispetto al piano della scheda. Montando lo stesso tipo di dissipatore (dalle sufficienti prestazioni), le due schede sono poco propense all’overclock.

3D Prophet 4500 64MB

 

3D Prophet 4500 32MB

In ultimo vogliamo ricordare gli effetti supportati: EMBM (Environment Mapping Bump Mapping) e DOT3 Bump Mapping, FSAA (Full Scene Anti-Aliasing) 2x/4x Supersampling, compressione texture (DXTC1), tutti i filtri (bilineare, trilineare e anisotropico) e supporto della motion-compensation.

 

Vai alla pagina 2 (Benchmark)



Console e accessori Playstation 2 - Playstation 3 - Xbox 360 - Sony PSP - Nintendo Wii