PDA

View Full Version : Memoria cache per le GPU!


Cosimo
17-02-2003, 00:03
Tutti sappiamo cosa significò l'incorporazione della memoria cache nei primi PII (512K fuori del chip), anteiormente installata nella motherboard. Dopo usci il primo Coopermine, che aveva 256k ma propio dentro del chip, così da aumentare le prestazioni in maniera davvero significativa.

Mi sto chiedendo se questa tecnologia esiste in qualche GPU in commercio, o se cè in progettazione per le prossime GPU la adozione di memoria L1 L2 o perfino L3 primo d'arrivare alla propia memoria della scheda grafica.
Adesso finisco di leggere un post che parla del prossimo NV40... Si si si... Propio rumors, ma dice qualcosa di interessante, parla di 16 MB di cache integrati propio dentro della GPU. Questa puo sembrare come minimo sulla carta, una nuova strada senza scoprire propio interessante già che la banda passante fra la cache e il processore è propio desorbitatamente superiore a quella che c'è a disposizione sulla memoria principale, anche essendo di 256 bit, o DDR II.
Credete che il futuro delle GPU si basa, (A parte dei miglioramenti interni e chiaro) nella adozzione di grande quantità di memoria cache, da poter così accedere a determinate instruzioni, molto più svelto?.
Ci sono anche da pensare nuove formule, già che intendiamo che certe textures, evidentemente mai potranno stare sulla cache, perche hanno una dimensione propio troppo grande, ma, qualche tecnica da poter gestionare, textures, iluminazioni o geometrie, situando ogni parámetro alla memoria corrispondente, (Textures su memoria generale, e geometria su memoria cache... Ad esempio.. non so, e soltanto un esempio)...

Puo essere il nuovo cammino? Potremo vedere qualche R400 con Memoria L1 e L2?

(Scusate dai errori ortografici, sono di parla Catalana).

OverClocK79®
17-02-2003, 00:10
dicono che la serie geforce abbiagià la cache dentro......
alcuni stanno svolgendo dei test......per assicurarsene.......
IMHO c'è dentro da un pezzo solo che nessuno dice quanta :D

c'era un articolo che girava 6 mesi fa di una prova su G2
ossia quanto tempo ci metteva per elaborare i dati da quando gli riceveva.......
ossia il tempo di riempire la cache e partire

ma nn posso giurartelo

BYEZZZZZZZZZZ

pandyno
17-02-2003, 00:20
Ovvio che dei registri ci sono, specie con l' introduzione del T&L e delle DX 8.x ->>>>

REPSOL
17-02-2003, 01:44
Mi sbaglio, oppure i progetti delle schede di powerbit (oppure si chiamavano i bitboy? azz no ricordo il nome) adottassero molta memoria chace? Oppure si parlava di un'altro tipo di memoria?

Ora il nomenon ricordo, ma quelli che avevano fatto il progetto di una GPU sul paint :) :D

Darkman
17-02-2003, 02:05
Embedded DRam... aahhhh... bei tempi quelli in cui girano voci di questa fantascientifica tecnologia dei bitboys!!!!

La ram fisica dentro la vpu... eppure mi sarebbe piaciuto mettere le mani sopra una loro creazione!

REPSOL
17-02-2003, 02:26
Originally posted by "Darkman"

Embedded DRam... aahhhh... bei tempi quelli in cui girano voci di questa fantascientifica tecnologia dei bitboys!!!!

La ram fisica dentro la vpu... eppure mi sarebbe piaciuto mettere le mani sopra una loro creazione!

E' si anche a me, peccato, che era tutto un fake :) :D

lombardp
17-02-2003, 08:08
Originally posted by "Cosimo"

Mi sto chiedendo se questa tecnologia esiste in qualche GPU in commercio, o se cè in progettazione per le prossime GPU la adozione di memoria L1 L2 o perfino L3 primo d'arrivare alla propia memoria della scheda grafica.

Le schede video adottano memoria cache on-die già da vari anni, anche troppa.

Cosimo
17-02-2003, 09:25
Originally posted by "lombardp"



Le schede video adottano memoria cache on-die già da vari anni, anche troppa.

Tutte le schede? Quanta quantità? Dici che troppa, perche? Secondo te allora fa calare le prestazioni?

Le famose schede "BitBoys" incorporavano memoria cache?

Rizlo+
17-02-2003, 12:02
Attenzione a non confondersi! Un conto è una piccola cache on-die indispensabile per eseguire certe istruzioni, un conto è integrare nel chip parte o la totalità della memoria video!
Chip che integrano la memoria video non esistono ancora(forse alcuni chip per 3D professionale come quelli di 3DLABS) e a quanto pare rappresentano il futuro (quindi sia ATI che nvidia ci stanno già lavorando su) perchè permettono un ampliamento di banda MOSTRUOSO. Purtroppo si tratta di una soluzione ancora molto costosa e probabilmente fino ad ora non è stata utilizzata proprio per questo motivo...

Athlon
17-02-2003, 13:10
Una memoria cache sui chip video non e' molto utile poiche' a differenza delle CPU le GPU trattano loop di dati molto piu' grandi che non riescono a stare nella cache, senza contare che un livello di cache aumenta la latenza mendia di accesso ai dati non solo nel caso di cache miss ma anche in caso di Hit poiche' per ogni accesso bisogna sempre e comunque accedere al TAG per vedere se i dati richiesi sono in cache o meno.

L'integrazione della memoria video su un singolo chip invece e' gia' fattibile e non presenta alcun problema , anzi permette di creare piste dedicate all'interno del package e di conseguenza ridurre di molto il pin count del chip.

Attualmente la tecnologia imiegata e' simile a quella impiegata nel Pentium Pro rivista pero' con la tecnica Flip Chip

Questo e' un esempio di Chip Geforce 4 MX con Embedded 32 MB di Ram

http://www.plasma-online.de/bilder/identify/chips/nvidia/geforce4_420go_map32.gif

Attualmente queste soluzioni sono usate solo sui portatili dove i chip anche se messi molto vicini si riescono lo stesso a raffreddare , per i desktop e' fattibile solo se l'accumulo di calore non raggiunge una soglia critica.


P.S. dimenticavo il Radeon M9

http://www.plasma-online.de/bilder/identify/chips/ati/m9000_s64.gif

Mecoita
17-02-2003, 13:30
delle piccole cache dove vengono storati dei dati sulle GPU esistono da parecchio tempo e quindi non rappresentano una novità ... allo stato attuale della tecnologia pensare di integrare la video ram on die su una scheda video è credo pura follia ... basta pensare quanta ram occorre per storare un doppio o triplo frame buffer a 1600x1200@32bit ( ancora peggio a 64 o 128bit introdotti con le dx9 ) con tanto di Z buffer e texture varie. Una soluzione praticabile potrebbe essere, quella di mettere su questa edram solo una parte del contenuto della edram ma occorrerebbe vedere quale è l'effettivo aumento delle prestazioni e se tale aumento giustifica l'inevitabile prezzo superiore del chip.

lombardp
17-02-2003, 14:09
Originally posted by "Athlon"

Una memoria cache sui chip video non e' molto utile poiche' a differenza delle CPU le GPU trattano loop di dati molto piu' grandi che non riescono a stare nella cache, senza contare che un livello di cache aumenta la latenza mendia di accesso ai dati non solo nel caso di cache miss ma anche in caso di Hit poiche' per ogni accesso bisogna sempre e comunque accedere al TAG per vedere se i dati richiesi sono in cache o meno.

Secondo me l'accesso sistematico alle memorie DDR esterne ha latenze ben più alte dell'accesso alla cache, per non parlare del traffico sul bus esterno.

fek
17-02-2003, 14:18
Esistono gia' delle cache nei chip video.

Ad esempio esistono le preTnL e postTnL cache dove vengono memorizzati i vertici prima di entrare nell'unita' TnL e dopo essere stati trasformati, cosi' da massimizzare il throughput nell'uso delle primitive indicizzate (normalmente due triangoli condividono due vertici in media).

Poi esiste una cache nella quale i texel, in uscita dalle unita' di accesso alle texture, sono memorizzati prima di essere passati in ingresso ai pixel shader.

Esattamente come la CPU memorizza istruzioni e dati.

Athlon
17-02-2003, 16:22
Originally posted by "lombardp"


Secondo me l'accesso sistematico alle memorie DDR esterne ha latenze ben più alte dell'accesso alla cache, per non parlare del traffico sul bus esterno.

L'eleborazione dei dati video pero' al contrario dei programmi convenzionali e' fortemente lineare , questo permette un ampio utilizzo di tecniche di prefetcing che mascherano molto le latenze.

LA cache ha senso se "ogni tanto" il programma torna indietro su istruzioni gia' eseguite o deve accedere agli stessi dati.

Purtropo la dimensione e la varieta' dei dati presenti in memoria non permette un utilizzo efficiente della cache.

Una soluzione intermendi potrebbe essere quella di separare la memoria "geometrica" da quella dedicata alle texture e fare in modo che quella geometrica sia integrata nella GPU mentre quella delle Texture sia esterna.

Cosimo
17-02-2003, 19:57
Originally posted by "Athlon"



L'eleborazione dei dati video pero' al contrario dei programmi convenzionali e' fortemente lineare , questo permette un ampio utilizzo di tecniche di prefetcing che mascherano molto le latenze.

LA cache ha senso se "ogni tanto" il programma torna indietro su istruzioni gia' eseguite o deve accedere agli stessi dati.

Purtropo la dimensione e la varieta' dei dati presenti in memoria non permette un utilizzo efficiente della cache.

Una soluzione intermendi potrebbe essere quella di separare la memoria "geometrica" da quella dedicata alle texture e fare in modo che quella geometrica sia integrata nella GPU mentre quella delle Texture sia esterna.

Esattamente la idea che ho avuto anteriormente. Qualche tecnica del genere potrebbe situare la geometria, (Molto meno pesante che le textures) dentro su una cache di 8 o 16 MB. Nei giochi si accede continuamente a dati già processati, (Quando torni in dietro su un quake ad esempio).

Ma la domanda continua ad essere la stessa. Nei prossimi chip, NV40 R400.... Parhelia 7... Etc :rolleyes: Cè la previsione di incorporare grande quantità di cache?

Qualcuno ci puo informare un po? Che vi sembra il post (RUMOROSO) del NV40, e quei 16 MB in cache a 220 GB/s?

Gohansupersaiyan4
17-02-2003, 21:32
La scheda video della ps2 ha 4mega di ram embedded, con una banda di 48 giga/secondo...e va a soli 150Mhz...

Il problema è vedere quanta ne riescono a mettere...

Altro discorso...è il fatto che la cpu deve passare i dati alaborati alla gpu tramite agp, parlo di dat, cosa che non succederebbe con una memoria unificata come quella dell' xbox...

Ciao !