|
|
|
![]() |
|
Strumenti |
![]() |
#61 | ||
Senior Member
Iscritto dal: Nov 2002
Città: Singularity
Messaggi: 894
|
Quote:
![]() Comunque con unità semplici non ci sono problemi per la propagazione dei segnali nel chip e sulla lunghezza delle interconnessioni, che pongono un limite superiore al clock raggiungibile... C'è da considerare che la potenza delle GPU attuali è limitata dalla frequenza relativamente bassa. Un ipotetico NV40 a 2GHz avrebbe l'impressionante potenza teorica di 128 Gflops a 32 bit. Quote:
Comunque questo significa fare 2 accessi successivi alla memoria, prima sullo Z buffer e poi sul texture buffer. Una cosa che non stavo assolutamente considerando:qui viene sottolineato il fatto che l'efficacia di Hierarchical Z e Early Z test dipende strettamente dall'ordine dei poligoni. Se l'ordine è back to front si ottiene overdraw massimo con in più l'overhead dei test aggiuntivi. Al contrario il Kyro eseguendo un'ordinamento di tutti i poligoni della tile ha in ogni caso overdraw nullo.
__________________
echo 'main(k){float r,i,j,x,y=-15;while(puts(""),y++<16)for(x=-39;x++<40;putchar(" .:-;!/>"[k&7])) for(k=0,r=x/20,i=y/8;j=r*r-i*i+.1, i=2*r*i+.6,j*j+i*i<11&&k++<111;r=j);}'&>jul.c;gcc -o jul jul.c;./jul |Only Connect| "To understand is to perceive patterns" Isaiah Berlin "People often speak of their faith, but act according to their instincts." Nietzsche - Bayesian Empirimancer - wizardry |
||
![]() |
![]() |
![]() |
#62 | |||
Senior Member
Iscritto dal: Mar 2001
Messaggi: 5390
|
Quote:
E oltre a questo, ci sono anche altri problemi da risolvere (che sarebbe un po' lungo da elencare). Però si tratta, in ogni caso, di architetture più efficienti e, soprattutto, che possono garantire un parallelismo notevolmente maggiore (necessario nelle applicazioni video, coma ha giustamente sottolineato Kirk). Quote:
un'analisi pixel per pixel nello z-buffer canonico imporrebbe continui accessi alla ram video (cosa assolutamente da evitare per non vedere decadere le prestazioni, poichè si tratta di una delle operazioni più "lente" di un chip grafico 8l'elevato parallelismo serve proprio a processare il maggior numero di pixel per pass, evitando, il più possibile, accessi alla ram video). Quote:
Una scansione back to front, in quel caso, non solo era affetta da overdraw (che era presente anche nella front to back) ma costringeva anche il chip ad effettuare quasi sempre entrambi gli step dello hyerarchical-z test, con notevole spreco di cicli di clock (praticamente si ottiene l'effetto opposto a quello che un ordinamento di tipo hyerarchical si propone, ossia di risparmiare cicli). Il TBR del Kyro, invece, per la sua stessa natura, risulta quasi "trasparente" all'ordine in cui sono effettuate le operaziooni. Nel caso dell'R300/R420, invece, in caso di back to front, non si ha overdraw, ma si ha il problema dello spreco di cicli di clock (per giunta peggio che nel caso dell'R200, poichè l'R300 ha un livello in più). Ultima modifica di yossarian : 14-11-2004 alle 15:27. |
|||
![]() |
![]() |
![]() |
#63 | |
Senior Member
Iscritto dal: Nov 2002
Città: Singularity
Messaggi: 894
|
Quote:
__________________
echo 'main(k){float r,i,j,x,y=-15;while(puts(""),y++<16)for(x=-39;x++<40;putchar(" .:-;!/>"[k&7])) for(k=0,r=x/20,i=y/8;j=r*r-i*i+.1, i=2*r*i+.6,j*j+i*i<11&&k++<111;r=j);}'&>jul.c;gcc -o jul jul.c;./jul |Only Connect| "To understand is to perceive patterns" Isaiah Berlin "People often speak of their faith, but act according to their instincts." Nietzsche - Bayesian Empirimancer - wizardry |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:02.