View Full Version : Al Computex la proposta ATI sulla fisica con le GPU
Redazione di Hardware Upg
31-05-2006, 10:19
Link alla notizia: http://www.hwupgrade.it/news/skvideo/17546.html
Indiscrezioni indicano possibile la presentazione da parte di ATI, in concomitanza con il Computex di Taipei, del proprio approggio alla fisica nei giochi
Click sul link per visualizzare la notizia.
ilmaestro76
31-05-2006, 10:28
ma di ageia, al di fuori dei "mostri" americani, non v'è ancora traccia?
Preferisco una scheda per la fisica separata. Se una GPU deve essere utilizzata per la fisica si perde la potenza dello SLI o del Crossfire
ripper71
31-05-2006, 10:30
mica male come idea....
mi "preoccupa" un pò questa destandardizzazione per elementi così importanti come può essere la fisica realtime
Così uno può prendersi una X1900 per giocare e magari una X1300 (che potrebbe risultare sufficiente) per la fisica. Non male.
norfildur
31-05-2006, 10:37
La cosa più interessante è che per questa soluzione, attivabile via driver, non sarà necessario disporre di due sk video identiche: questo vuol dire che si potrà usare una x1600, ad esempio, per la fisica ed una x1900 per la grafica, ottenendo prestazioni superiori all'attuale Crossfire (almeno in linea teorica).
Sinceramente mi sembra una grossa cavolata usare un'altra scheda grafica o GPU che si voglia (evviva spendiamo soldi inutilmente) ... dato che "ormai" la maggior parte dei gamer usa processori dual core non sarebbe più opportuno usare uno di quelli? Tanto giochi che usino entrambi i processori non esistono. Quelli a venire, che vorranno implementare un motore fisico autentico potranno sfruttare uno dei core della CPU proprio per questo invece di non fargli fare un bel nulla. Al più se proprio è necessario usare una GPU non sarebbe oppurtuno sviluppare GPU dual core?
Ma cosa sarebbe la fisica nei giochi?
Non c'è già ora?
Bò forse ho capito male io... :p
JOHNNYMETA
31-05-2006, 10:43
Se l'approccio ATI verrà confermato da prodotti resi disponibili sul mercato, si potranno verificare scenari per i quali il possessore di un sistema Crossfire con due Slot PCI Express potrà aggiornare la propria scheda video con un modello più potente, continuando comunque ad utilizzarla come scheda secondaria destinata specificamente all'elaborazione della fisica.
Questo scenario mi piace estremamente, complimentissimi ad Ati se confermerà una chicca del genere.E' geniale perchè è l'approccio più naturale,efficiente, pro utente e pro ati che si possa pensare. :eek:
Sicuramente meglio che comprare una scheda dedicata Ageia di scarsa potenza a 300€.
Sinceramente mi sembra una grossa cavolata usare un'altra scheda grafica o GPU che si voglia (evviva spendiamo soldi inutilmente) ... dato che "ormai" la maggior parte dei gamer usa processori dual core non sarebbe più opportuno usare uno di quelli? Tanto giochi che usino entrambi i processori non esistono. Quelli a venire, che vorranno implementare un motore fisico autentico potranno sfruttare uno dei core della CPU proprio per questo invece di non fargli fare un bel nulla. Al più se proprio è necessario usare una GPU non sarebbe oppurtuno sviluppare GPU dual core?
perché la fisica, spiegava mi sembra fek, é meglio digeribile come tipo di dati dalle gpu rispetto alle cpu, quindi sarebbe più efficiente a livello di architettura.
In ogni caso, questo approccio avrebbe il plus di poter appunto non buttare la vecchia scehda utilizzandola come scheda fisica. D' altro canto, però, io preferirei direttamente una scheda single purpose come aegeia.
Ci vogliono delle API standard come le directX o le OpenGL altrimenti non vanno da nessuna parte :)
Forse l'approccio ATI permetterebbe pure di avere un scheda dedicata alla grafica nVidia e una dedicata alla fisica ATI, a meno che i driver ATI non funzionino solo se rilevano anche per la grafica una ATI...
@ azaroth
su questo non son d' accordo.
Le glide a suo tempo fecero furore
Chi ha interesse e finanze x lo sli e il crossfire non credo voglia castrare il comparto video dedicando una sk alla fisica...perdendo la configurazione a doppia sk...D'altro canto Ati dalla sua ha avuto una bella idea permettendo di reciclare le sk opsolete se così vogliamo chiamarle...x essere utilizzate x la fisica.
A grandi linee mi convince di + una sk dedicata alla fisica che sia ageia o della stessa ati o nvidia.
Da ignorante totale in quanto a motori fisici penso che i processori comunque con le operazioni vettoriali (MMX SSE ecc..) se la possano cavare in questi calcoli ;)
L'idea di usare il secondo core sicuramente non è malvagia.
ErminioF
31-05-2006, 11:03
Io preferirei utilizzare il 2° core delle cpu, ormai il mercato va verso questo senzo.
La 2° GPU per la fisica mi sembra inutile, a questo punto ti compri una scheda ageia da 200euro anzichè la 2° 7900GTX e dovrebbe andare di più visto che è specializzata in quello.
/me in attesa dei benchmark di queste inutilità :asd:
E chi vuole sli/crossfire + fisica...? è obbligato a ageia...visto che 3 pcie non ci sono ahahahah ce sempre chi vuole esagerare no...
Quindi prevedo l'entrata di ati/nvidea nel mercato della fisica dedicata...non si fanno mica sfuggire una possibilità del genere no...che dite...
“Indiscrezioni indicano possibile la presentazione da parte di ATI, in concomitanza con il Computex di Taipei, del proprio approggio alla fisica nei giochi”
Che approccio negativo che ha Corsini con il libro di grammatica ... :asd:
MenageZero
31-05-2006, 11:16
Ma cosa sarebbe la fisica nei giochi?
Non c'è già ora?
Bò forse ho capito male io... :p
sarebbe realizzare vg in cui ambienti cose e personaggi interagiscano tra loro con almeno una parvenza di rispetto per quelle che sarebbero le leggi della fisica nel mondo reale... ;)
c'è già nel senso che esistono già alcuni titoli (es hl2), come ricorda anche la news, che introducono tale simulazione, alemeno fino ad un certo livello che poi non è che sia una simulazione accuratissima della fisica reale, usando dei "motori fisici" (es havoc) le cui computazioni vengono eseguite dalla cpu, ad ora; siccome la simulazione delle leggi fisiche è una cosa computazionalmente molto pesante e lo è tanto più quanto la si vuole accurata, la questione per il futuro si sta spostando su quale componente hw delegare a questi calcoli, i quali porb. beneficaino soprattutto di risorse in virgola mobile, quindi lasciarli alla cpu può essere una "seconda scelta" rispetto ad eseguirli con una gpu che offre molta più "potenza" in fp per questo tipo di applicazioni data la specifica architettura e il maggiorn numero di unità di calcolo rispetto ad una cpu (anche dual o quad core...); e ovviamente ancora meglio una ppu (physics processing unit) dedicata, come quella di ageia...
x chi proponeva di laciare la fisica alla cpu, in quanto già diffusi i dual core, o di andare versi gpu "dula-core": per la prima ipotesi, una gpu offre risorse molto maggiori per questo tipo di elaborazioni, come già detto; per la seconda, parlare di gpu dual-core o multi core non ha molto senso dato che oggi le gpu sono già architetture estremamente parallelizzate e "multi" internamente (mai notato che nelle cpu si parla di solito di 1 pipeline, mentre nelle gpu di n pipeline (orami siamo ad 8 anche nella fascia bassa)... ?
qualcosa di analogo all'aumento dei core, nelle già gpu avviene regolarmente ad ogni(o quasi) presentazione di una nuova top di gamma, con l'aumento delle pipeline e unità di calcolo varie al loro interno...)
Michelangelo_C
31-05-2006, 11:17
Che approccio negativo che ha Corsini con il libro di grammatica ... :asd:
Approggio ignorante, si dice approggio! :rotfl:
Athlon 64 3000+
31-05-2006, 11:19
Diciamo che l'approccio di Ati per la fisica risulta più flessibile rispetto allo SLI Physics di Nvidia ma vi ricordo che per fare una cosa del genere ci vuole una scheda che faccia il crossfire o lo SLI.
Io personalmente vorrei avere la possibilità che anche la gpu singola abbia la possibilità di calcolare la fisica e non necessariamente ci sia bisogna di una seconda scheda video o un chip decidato alla fisica.
Diciamo che per esempio per uno come me che non ha una scheda madre che fà SLI o Crossifire e quindi solo una X1900XT teoricamente sembra che non possa accellerare la fisica e invece vorrei che venga data la possibilità anche a chi ha una singola scheda la possibilità di calcolare la fisica senza aver necessariamente bisogno di una seconda scheda.
Naturalmente con il Crossifire o SLI si avranno dei benefici in più e maggiori performance.
Se va tutto come previsto a fine anno per esempio è previsto R600 che quasi sicuramente con la sua particolare architettura accellererà la fisica in hardware.
@ MenageZero
Non c'è da considerare solo le prestazioni ma anche il costo per l'industria, per gli sviluppatori e per l'utente.
Soluzione CPU: costi per l'industria in termini di ricerca e conversione degli impianti = 0, costo per gli sviluppatori = implementazione del motore fisico con linguaggio standard, costo per l'utente = 0 (tanto tutti i nuovi processori sono dual core).
Soluzione GPU: costi per l'industria per ricercare nuove soluzioni e architetture e per la produzione, costi per gli sviluppatori per implementare soluzioni specifiche (qualcuno ricordava le glide) e potenzialmente non standard (1 versione del gioco per ATI una per Nvidia e una per Ageia), costi per l'utente perchè si deve comprare una scheda in +.
Ovviamente per le postazioni high end una scheda separata risulta sicuramente + performante. Sarà il mercato a decidere come sempre :)
mestesso
31-05-2006, 11:30
Per me una soluzione più semplice sarebbe utilizzare il già discreto potenziale presente in una scheda grafica integrata sulla scheda madre. Nessuno ci ha pensato?
MenageZero
31-05-2006, 11:32
imho, una soluzione molto "pratica" per il videogiocatore potrebbe essere nel (magari prossimo) futuro una implementazione da parte di ati e nvidia di una ppu dedicata(o di una apposita sovradotazione di unità di calcolo da dedicare alla fisica) direttamente nella circuiteria della gpu o in un chip da affiancare di default sulla scheda video alla gpu, almeno nei modelli di fascia alta e mdio/alta... anziché andare verso configurazioni complessive del pc smpre più comlesse ed abbondanti di schede per avre tutto al max via hw...
inoltre avere tutto in una scheda potrebbe essere al strada migliore se si vuole veramente una ampia diffusione nel pubblico della fisica "accelerata in hw", almeno in tempi relativamente rapidi.
MenageZero
31-05-2006, 11:36
Per me una soluzione più semplice sarebbe utilizzare il già discreto potenziale presente in una scheda grafica integrata sulla scheda madre. Nessuno ci ha pensato?
solo che probabilmente i videogiocatori che si sono comprati una mobo con grafica integrata(sia perché non va bene per giocare sia perché se aggiungi una scheda video non ha senso comprare il chipset con video integrato) sono prossimi allo 0, statisticamente.
zanardi84
31-05-2006, 11:41
Finalmente è stata trovata la soluzione che giustifica l'utilizzo di 2 schede video.
Se sino ad ora lo SLI era tutto trane che utile (con quella cifra si cambiava gpu all'uscita della generazione successiva), adesso una gpu mi sembra giusto delegarla ai lavori pesanti :D
Quale approccio sia migliore è difficile da giudicare, alla luce del fatto che di videogiochi svilupati con una fisica particolarmente avanzata non ce ne sono.
Se in futuro il comparto fisico non avrà aumenti di richieste hardware, credo che la soluzione di ATI sia migliore perchè conterrebbe i costi e a quel punto parleremmo di "Acceleratore fisico" e uno di questi durerebbe almeno un paio di generazioni.
Comunque, mi sembra di capire che ATI sia orientata a produrre schede general purpose, in grado di svolgere qualsiasi tipo di operazione, dal video alla fisica all'audio e, secondo me, sarebbe effettivamente cosa buona e giusta; spendere cifrone per schede da videogioco è effettivamente uno spreco, ma almeno adesso sarebbe ridotto dalla presenza di componenti capaci di fare tutto.
norfildur
31-05-2006, 11:44
Diciamo che l'approccio di Ati per la fisica risulta più flessibile rispetto allo SLI Physics di Nvidia ma vi ricordo che per fare una cosa del genere ci vuole una scheda che faccia il crossfire o lo SLI.
È proprio questo il bello della soluzione ATi, cioé che non si ha bisogno di due schede in Crossfire. Infatti i driver gestirebbero in automatico ( previa designazione di quale delle due da parte dell'utente ) una scheda per la fisica, e l'altra per la grafica. Sarebbe, in pratica, come se si avesse una scheda della Ageia senza avere la necessità di comprarla, anche perché per quest'ultima i giochi dovrebbero supportarla direttamente, mentre sembra che la soluzione ATi possa essere usata anche con quei giochi che non la supportano direttamente (essendo tutto gestito via driver ). Ma questi sono solo rumors, perciò vanno prese con le molle.
Penso che anche NVidia presto modificherà la sua soluzione per ottenere qualcosa del genere, visto anche che è stata la prima ad introdurre questa possibilità sulle sue schede, poiché al momento le due sk video devono per forza essere collegate in SLI (e dunque essere identiche).
MenageZero
31-05-2006, 11:52
@ MenageZero
Non c'è da considerare solo le prestazioni ma anche il costo per l'industria, per gli sviluppatori e per l'utente.
Soluzione CPU: costi per l'industria in termini di ricerca e conversione degli impianti = 0, costo per gli sviluppatori = implementazione del motore fisico con linguaggio standard, costo per l'utente = 0 (tanto tutti i nuovi processori sono dual core).
Soluzione GPU: costi per l'industria per ricercare nuove soluzioni e architetture e per la produzione, costi per gli sviluppatori per implementare soluzioni specifiche (qualcuno ricordava le glide) e potenzialmente non standard (1 versione del gioco per ATI una per Nvidia e una per Ageia), costi per l'utente perchè si deve comprare una scheda in +.
Ovviamente per le postazioni high end una scheda separata risulta sicuramente + performante. Sarà il mercato a decidere come sempre :)
si ma alla soluzione via cpu ci siamo già, praticamente (ok ora sono diffusi i dual core, tanto meglio, poi bisognerebbe vedere anche fino a che punto è "semplice" e "low-cost" per id dev. rendere il gioco multithreaded e i flussi di elaborazione per l'engine fisico abbastnza indipendenti da altri in modo da sfruttare pienamente una cpu multi-core), la tendenza sembra invece quella di fornire ancora più potenza di calcolo, per una sempre maggiore accuratezza della simulazione, suppongo.
Certo anche la diversità di soluzioni dei diversi produttori hw potrebbero essere un problema, ma magari potrebbero anche dare supporto agli stessi engine fisici accollandosi loro tramite driver e/o layer intermedi l'uso del loro hw per le computazioni "fisiche" e magari fornendo dei devkit alle sw house che permettano di evitare eccessivi sforzi di differenziazione...
(in fondo le prime news su fisica via gpu riguardavano l' "accelerazione" di havoc, engine pre-esistente e ora ati ed nvidia stanno implementando entrambe dx10 che obbilgano un standardizzazione molto più rigida delle precedenti, senza "batter ciglio", a quel che si sa...)
Athlon 64 3000+
31-05-2006, 11:54
È proprio questo il bello della soluzione ATi, cioé che non si ha bisogno di due schede in Crossfire. Infatti i driver gestirebbero in automatico ( previa designazione di quale delle due da parte dell'utente ) una scheda per la fisica, e l'altra per la grafica. Sarebbe, in pratica, come se si avesse una scheda della Ageia senza avere la necessità di comprarla, anche perché per quest'ultima i giochi dovrebbero supportarla direttamente, mentre sembra che la soluzione ATi possa essere usata anche con quei giochi che non la supportano direttamente (essendo tutto gestito via driver ). Ma questi sono solo rumors, perciò vanno prese con le molle.
Penso che anche NVidia presto modificherà la sua soluzione per ottenere qualcosa del genere, visto anche che è stata la prima ad introdurre questa possibilità sulle sue schede, poiché al momento le due sk video devono per forza essere collegate in SLI (e dunque essere identiche).
Io comunque spero per ci ha una solo X1900 per esempio venga data la possibilità di far si che anche una singola gpu possa calcolare sia la fisica che la grafica.
Con R600 si andrà verso una GPU più generica che calcolerà anche fisica e audio e quindi anche con una sola R600 e non 2 in crossfire.
credo che per quando avremo disponibili titoli con grande presenza di fisica, una 1900xt sia relativamente impegnata, quindi meglio lasciarla fare solo il suo lavoro.
Viceversa, dedicargli una scheda anche di fascia medio-bassa, per poter spendere quei 50-100 euro, potrebbe portare comunque benefici ad entrambe.
coschizza
31-05-2006, 12:15
Io preferirei utilizzare il 2° core delle cpu, ormai il mercato va verso questo senzo.
La 2° GPU per la fisica mi sembra inutile, a questo punto ti compri una scheda ageia da 200euro anzichè la 2° 7900GTX e dovrebbe andare di più visto che è specializzata in quello.
/me in attesa dei benchmark di queste inutilità :asd:
è possibile utilizzare il secondo come ma il problema è che la potenza di un core di oggi è troppo limitata rispetto a una scheda specializzata o una gpu utilizzata come motore per la fisica.
non parliamo di prestazioni inferiori di 20-30% ma di un ordine di grandezza. Quindi utilizzare il secondo core è sicuramente un paso avanti rispetto ad oggi ma molti passi indietro rispetto a hardware specializzato.
se indicativamente con un core puoi gestire 200 oggetti con applicata la fisica, con 2 core puoi arrivare sempre indicativamente a 400, ma una scheda specializzata o una gpu con tutte le sue pipeline arriva anche a 10-20.000 oggetti sullo schermo contemporaneamente.
A questo punto nel futuro sarà meglio utilizzare il secondo core (o anche il tero quarto ecc ) per migliorare altre cose come la IA e il motore del gioco e lasciare la fisica ad hardware specifici.
disteluc
31-05-2006, 12:16
Quindi in pratica quando usciranno le dx 10 potro tenere la mia his 1900xtx ice 3 per la fisica.Mi sembra super idea.Aggiorno la scheda videoa una dx 10 e la mia vecia dx 9 rimane ultrapotente e utile.
ilmaestro76
31-05-2006, 12:22
ed ovviamente bisognerà vedere quanti e quali titoli "apriranno la strada" a questa "nuova" tecnologia...
Siamo già ai dual core. Per l' inizio del 2007 sono attesi i primi quad-core. Entro il 2010 è probabile che il processore desktop standard vanti 8 core ... tutta questa potenza di calcolo a cosa serve se poi per ogni tipologia di calcolo si creano delle schede apposite ? ... mah
Preferirei lo sviluppo di giochi fatti appositamente per sfruttare più core.
MenageZero
31-05-2006, 12:33
Siamo già ai dual core. Per l' inizio del 2007 sono attesi i primi quad-core. Entro il 2010 è probabile che il processore desktop standard vanti 8 core ... tutta questa potenza di calcolo a cosa serve se poi per ogni tipologia di calcolo si creano delle schede apposite ? ... mah
Preferirei lo sviluppo di giochi fatti appositamente per sfruttare più core.
possibile, ma bisognrà vedere, non è detto... mancano meno di 4 anni (che in informatica/elettronica sono tanti, ma non sempre si fanno "leap ahead" :D enormi...), come non è stata "infinita" né lineare la scalata in frequenza di clock, può non esserlo l'aumento dei core e la (correlata) miniaturizzazione del processo produttivo (o altro)...
MenageZero
31-05-2006, 12:35
è possibile utilizzare il secondo come ma il problema è che la potenza di un core di oggi è troppo limitata rispetto a una scheda specializzata o una gpu utilizzata come motore per la fisica.
non parliamo di prestazioni inferiori di 20-30% ma di un ordine di grandezza. Quindi utilizzare il secondo core è sicuramente un paso avanti rispetto ad oggi ma molti passi indietro rispetto a hardware specializzato.
se indicativamente con un core puoi gestire 200 oggetti con applicata la fisica, con 2 core puoi arrivare sempre indicativamente a 400, ma una scheda specializzata o una gpu con tutte le sue pipeline arriva anche a 10-20.000 oggetti sullo schermo contemporaneamente.
A questo punto nel futuro sarà meglio utilizzare il secondo core (o anche il tero quarto ecc ) per migliorare altre cose come la IA e il motore del gioco e lasciare la fisica ad hardware specifici.
:mano:
norfildur
31-05-2006, 12:39
Io comunque spero per ci ha una solo X1900 per esempio venga data la possibilità di far si che anche una singola gpu possa calcolare sia la fisica che la grafica.
Con R600 si andrà verso una GPU più generica che calcolerà anche fisica e audio e quindi anche con una sola R600 e non 2 in crossfire.
Il limite attuale è proprio dato dal fatto che, al momento, sia fisica che grafica sono computati dalla GPU, ragion per cui si avrebbe un forte impatto sulle prestazioni nel caso in cui si volesse avere una fisica più accurata. Le soluzioni a shader unificati sicuramente daranno una maggiore flessibilità, ma saranno in ogni caso inferiori ad una situazione in cui una GPU calcola la sola fisica mentre l'altra si occupa degli effetti grafici... :)
DarKilleR
31-05-2006, 12:50
tutti entusiasti????
Al max iniziamo ad usare i dual core per la fisica....ma che 2 VGA o una scheda separata....
Una gran cosa sarebbe se con l'R600 o con l'R580 visto le 48 pixel pipeline, si potesse programmare qualche ALU in modo da dedicarla ai calcoli fisici ed allo stesso tempo poterci giocare.
Altrimenti al diavolo SLI, CROSS FIRE e AGEIA....preferisco stare come ora e che mi tirino fuori un buon gioco anche se graficamente un po' meno bello...
+Benito+
31-05-2006, 13:05
mi sembra veramente assurdo. Anche solo pensare ad una scheda in più per fare altri calcoli mi sembra la disfatta totale della programmazione, ormai incapace di sfornare un codice decentemente elaborabile dalle cpu, sfruttando il fatto che ormai c'è "potenza da vendere". Quello che una volta veniva fatto macinare da un 68000 a 16 MHz per ottenerlo adesso con i metodi di programmazione attuali non basterebbe un Pentium. Ma scherziamo? ditemi voi se uno deve avere in un pc 3 o 4 cpu.
Abbiamo alla porta CPU con potenze inimmaginabili, con 4 core, 8 core operanti a 3 GHz o poco meno con banda di memoria superiore ai 10 GB/s, cosa che fino a 10 anni fa si sognavano i centri di calcolo, e ci si interroga su quale scheda video comprare per fargli fare 4 calcoli NON VIDEO?
mi sembra veramente assurdo. Anche solo pensare ad una scheda in più per fare altri calcoli mi sembra la disfatta totale della programmazione, ormai incapace di sfornare un codice decentemente elaborabile dalle cpu, sfruttando il fatto che ormai c'è "potenza da vendere". Quello che una volta veniva fatto macinare da un 68000 a 16 MHz per ottenerlo adesso con i metodi di programmazione attuali non basterebbe un Pentium. Ma scherziamo? ditemi voi se uno deve avere in un pc 3 o 4 cpu.
Abbiamo alla porta CPU con potenze inimmaginabili, con 4 core, 8 core operanti a 3 GHz o poco meno con banda di memoria superiore ai 10 GB/s, cosa che fino a 10 anni fa si sognavano i centri di calcolo, e ci si interroga su quale scheda video comprare per fargli fare 4 calcoli NON VIDEO?
Quindi tu affermi che una simulazione di fluidodinamica, ad esempio, che non e' altro che una serie di calcoli su enormi matrici, puo' essere implementata su un dual core in maniera altrettanto efficiente rispetto ad una GPU? E se questo non e' possibile e' la sconfitta della programmazione incapace di sfornare un codice decentemente elaborabile dalle CPU?
Questo tralasciando il discorso che il problema qui non e' la potenza di calcolo in se', ma la banda passante che serve a trasferire i dati calcolati dalla CPU alla GPU per il rendering.
Athlon 64 3000+
31-05-2006, 13:22
Quindi tu affermi che una simulazione di fluidodinamica, ad esempio, che non e' altro che una serie di calcoli su enormi matrici, puo' essere implementata su un dual core in maniera altrettanto efficiente rispetto ad una GPU? E se questo non e' possibile e' la sconfitta della programmazione incapace di sfornare un codice decentemente elaborabile dalle CPU?
Questo tralasciando il discorso che il problema qui non e' la potenza di calcolo in se', ma la banda passante che serve a trasferire i dati calcolati dalla CPU alla GPU per il rendering.
Ottima considerazione.
Infatti scaricare il calcolo della fisica sulle gpu è ottima cosa ma io vorrei che anche una singola gpu come R580 abbia la possibilità di eseguire calcoli per la fisica e poi con una ventuale schede aggiuntiva come la X1600 si avranno maggiori performance come adesso è nelle prestazioni grafiche per lo SLI e il crossifire.
Scommetto che con R600 cambierà tutto.
Sinceramente non ho capito cosa c'entra un calcolo fisico con un rendering della GPU? Il motore fisico serve per calcolare le posizioni di oggetti nello spazio date determinate forze fisiche e formule matematiche correlate (magari anche a calcolare pathfinding o collision di oggetti). Se non sono completamente fulminato questi processi sono da fare PRIMA che venga renderizzata la scena. Premesso questo, e magari mi sbaglio perchè non conosco a fondo la programmazione delle schede video moderne, questi calcoli non possono essere fatti da una normale CPU (vedi secondo core) ? In fondo sono calcoli matematici che con le cache L1 dei processori attuali possono essere fatti abbastanza velocemente.
Sinceramente non ho capito cosa c'entra un calcolo fisico con un rendering della GPU? Il motore fisico serve per calcolare le posizioni di oggetti nello spazio date determinate forze fisiche e formule matematiche correlate (magari anche a calcolare pathfinding o collision di oggetti). Se non sono completamente fulminato questi processi sono da fare PRIMA che venga renderizzata la scena. Premesso questo, e magari mi sbaglio perchè non conosco a fondo la programmazione delle schede video moderne, questi calcoli non possono essere fatti da una normale CPU (vedi secondo core) ? In fondo sono calcoli matematici che con le cache L1 dei processori attuali possono essere fatti abbastanza velocemente.
C'entra nella misura in cui le GPU non sono piu' dei semplici macina politica, ma sono dei processori vettoriali altamente paralleli. Altamente paralleli. Ovunque ci sia da fare complessi calcoli vettoriali su moltissimi elementi che non dipendono l'uno dall'altro, una GPU puo' risolvere il problema anche un'ordine di grandezza piu' velocemente di una CPU general purpose equivalente in termini di transistor.
coschizza
31-05-2006, 13:34
? In fondo sono calcoli matematici che con le cache L1 dei processori attuali possono essere fatti abbastanza velocemente.
il problema sta nel "abbastanza velocemente"
un core di una cpu moderna ha una potenza sui numeri in virgoma mobile dell'ordine di grandezza dei 10 miliardi di operazioni al secondo
una gpu TOP level o le cpu delle console next gen hanno sempre come ordine di grandeza una potenza di 100 miliardi di operazioni al secondo, quindi avere 1 core è comunque niente rispetto ad avere GPU moderne con decine di piccoli core (seppur ancora molto limitati rispetto a quello che servirebbe per fargli svolgere compiti realmente molto complessi).
con le GPU directx 10 le cose miglioreranno di molto perche verranno implementate alcune funzioni che renderanno le pileline delle schede video molto piu versatili di oggi, per esempio si toglierà il limite alla lunghezza degli shader e si potranno fare operazioni sui numeri interi cosa che oggi deve avvenire invece principalmente con operazioni su numeri in virgola mobile e solo poi convertiti (con ovvi problemi di efficenza e performance). Inoltre oggi i singoli shader hanno accesso limitato a variabili costanti ecc con le directx10 invece virtualmetnte gli shader potranno accedere senza limiti a molte piu risorse rendendo le singole pipeline delle virtuali singole cpu molto piu potenti e versatili.
Oggi come oggi fare un programma non grafico su di una gpu è fattibile ma molto complicato perche la gpu come target ha sempre i pixel o vertex shader quindi fare un banale
a=1
b=2
c=a+b
è molto piu complicato di come si farebbe con una cpu normale, ma qui entra in campo la fantasia e l'abilità degli sviluppatori.
X fek
visto che ne sa piu di me mi confermi se ho sbagliato qualcosa e cosa mi sono perso dal punti di vista delle novita nelle nuove directx10 dal punto di vista delle nuove funzionalità che potrebbero dare una mano a sviluppare software diversi da quelli grafici sulle gpu.....
grazie ;)
poi mi fa specie leggere "non serve a nulla" da chi parla di 68000. E' la stessa cosa che veniva detto al tempo di quella cpu delle orchid righteous 3d perché tanto le et6000 erano più che sufficienti, e le cpu erano sovrabbondanti.
Mi fa meno specie se detto da chi a quel tempo non aveva mai acceso un pc, perché quella fu una delle rivoluzioni più importanti del gaming pc (paragonabile a quella di doom).
Ad oggi sembra logico che una gpu abbia potenzialità 3d, mentre al tempo il 3d era qualcosa di superfluo, tanto superfluo da non esser presente nelle schede video.
imho, una soluzione molto "pratica" per il videogiocatore potrebbe essere nel (magari prossimo) futuro una implementazione da parte di ati e nvidia di una ppu dedicata(o di una apposita sovradotazione di unità di calcolo da dedicare alla fisica) direttamente nella circuiteria della gpu o in un chip da affiancare di default sulla scheda video alla gpu, almeno nei modelli di fascia alta e mdio/alta... anziché andare verso configurazioni complessive del pc smpre più comlesse ed abbondanti di schede per avre tutto al max via hw...
inoltre avere tutto in una scheda potrebbe essere al strada migliore se si vuole veramente una ampia diffusione nel pubblico della fisica "accelerata in hw", almeno in tempi relativamente rapidi.
questa sarebbe in assoluto la soluzione preferibile, altrimenti, in un modo o nell'altro, si finisce per essere obbligati ad avere 2 schede installate.
bruttissima cosa... è inutile secondo me forzare a comprare 2 schede video (con quello che consumano) e poi 1 delle 2 (credo la meno potente) fargli fare la fisica. Con un prezzo di 250$ (non è molto) ti compri una PPU Ageia che è fatta x fare la fisica.
Non ricordo dove lessi ma con le schede video la fisica sarà cmq limitata e anche xkè una X1600 x fare fisica dovrebbe avere driver in grado di istruirla (cosa inutile secondo me visto che la Ageia fa ampiamente il suo lavoro e anche meglio delle video). Secondo me il vero problema è che ATI e NVIDIA (xkè anche nvidia pensa alla fisica) vogliono fare altri soldi.
Pensate x un secondo chi comprerebbe 2 schede ATI (x esempio) non comprerà mica 2 X1600... ma una x1900XTX + una x1600 x la fisica con entrate altissime a favore di ati che altrimenti avrebbe venduto solo la scheda video (ma forse neanche la x1900) ;)
CMQ appena mi rifaccio il pc (dopo estate) uno slot PCI è x la PPU Ageia :)
si ma alla soluzione via cpu ci siamo già, praticamente (ok ora sono diffusi i dual core, tanto meglio, poi bisognerebbe vedere anche fino a che punto è "semplice" e "low-cost" per id dev. rendere il gioco multithreaded e i flussi di elaborazione per l'engine fisico abbastnza indipendenti da altri in modo da sfruttare pienamente una cpu multi-core), la tendenza sembra invece quella di fornire ancora più potenza di calcolo, per una sempre maggiore accuratezza della simulazione, suppongo.
Certo anche la diversità di soluzioni dei diversi produttori hw potrebbero essere un problema, ma magari potrebbero anche dare supporto agli stessi engine fisici accollandosi loro tramite driver e/o layer intermedi l'uso del loro hw per le computazioni "fisiche" e magari fornendo dei devkit alle sw house che permettano di evitare eccessivi sforzi di differenziazione...
(in fondo le prime news su fisica via gpu riguardavano l' "accelerazione" di havoc, engine pre-esistente e ora ati ed nvidia stanno implementando entrambe dx10 che obbilgano un standardizzazione molto più rigida delle precedenti, senza "batter ciglio", a quel che si sa...)
Pià andranno avanti i multicore + i programmatori dovranno adeguarsi per sfruttare appieno la potenza del processore, fare gestire un engine ad un core dovrebbe essere una cosa facile perchè la stessa definizione di "engine" lo fa pensare come una cosa "a se stante" a cui dare input e da cui prendere output che richiede un calcolo pesante. Gli sviluppatori sicuramente si dovranno adeguare, qualunque sia la soluzione, a pensare ai giochi multithreaded. Sicuramente tutta la struttura del programma diventa + complicata ma sono i costi da affrontare per avere una architettura parallela.
Per quanto riguarda l'accelerazione di havoc e la differenziazione, torniamo alla questione che ho posto prima: c'è bisogno di una libreria standard per i calcoli fisici come sono le directx o le opengl per la grafica, altrimenti sarà il caos (come per 3dfx all'inizio).
Rassegnarsi all'implementazione dei driver da parte delle case di produzione significa sperare nella carità, e poi notoriamente i driver sono i pezzi + buggati di sw che esistano soprattutto quelli video :P, serve appunto come dici tu un layer intermedio, cioè una libreria :)
bruttissima cosa... è inutile secondo me forzare a comprare 2 schede video (con quello che consumano) e poi 1 delle 2 (credo la meno potente) fargli fare la fisica. Con un prezzo di 250$ (non è molto) ti compri una PPU Ageia che è fatta x fare la fisica.
Questo tralasciando il discorso che il problema qui non e' la potenza di calcolo in se', ma la banda passante che serve a trasferire i dati calcolati dalla CPU alla GPU per il rendering.
hmm
disteluc
31-05-2006, 15:14
Con le dx 10 pero sai quanti avranno gpu che da 500 e passa euro varranno quasi nulla?Con questa soluzione invece la GPU VECCHIA SARA UTILE e invece di comprarmi una ageia a 300 euro che adesso sembra ancora una ca...ta ci terremo la vecchia gpu.L'ageia che lamciano adesso sembra abbia 128 mb di ram e gia si parla di ujna versione con 256.Cioe' se prima correvamo dietrp a schede video in continua evoluzione adesso abbiamo anche le fisiche che cambiano di continuo.A me la soluzione di ati piace molto,considerato anche che non voglio cambiare di contino scheda madre per dual core 4 core 8 core ecc.Secondo me una schedozza come ati 1900 con 512 mb di ram sara' ben meglio a calcolare gli effetti fisici rispetto una ageia 128mb.
MenageZero
31-05-2006, 15:15
tutti entusiasti????
Al max iniziamo ad usare i dual core per la fisica....ma che 2 VGA o una scheda separata....
Una gran cosa sarebbe se con l'R600 o con l'R580 visto le 48 pixel pipeline, si potesse programmare qualche ALU in modo da dedicarla ai calcoli fisici ed allo stesso tempo poterci giocare.
Altrimenti al diavolo SLI, CROSS FIRE e AGEIA....preferisco stare come ora e che mi tirino fuori un buon gioco anche se graficamente un po' meno bello...
come hanno già speigato altri utenti molto più competenti di me in materia, le gpu o altri chip dedicati possono offrire prestazioni anche di un ordine di grandezza superiore nei calcoli "fisici" rispetto alle cpu anche dualcore o più, quindi puoi facilmente concludere quale possa essere la corsia preferenziale per simulare le leggi fisiche quanto più accuratamente possibile in base al materiale a disposizione nel settore pc...
MenageZero
31-05-2006, 15:23
mi sembra veramente assurdo. Anche solo pensare ad una scheda in più per fare altri calcoli mi sembra la disfatta totale della programmazione, ormai incapace di sfornare un codice decentemente elaborabile dalle cpu, sfruttando il fatto che ormai c'è "potenza da vendere". Quello che una volta veniva fatto macinare da un 68000 a 16 MHz per ottenerlo adesso con i metodi di programmazione attuali non basterebbe un Pentium. Ma scherziamo? ditemi voi se uno deve avere in un pc 3 o 4 cpu.
Abbiamo alla porta CPU con potenze inimmaginabili, con 4 core, 8 core operanti a 3 GHz o poco meno con banda di memoria superiore ai 10 GB/s, cosa che fino a 10 anni fa si sognavano i centri di calcolo, e ci si interroga su quale scheda video comprare per fargli fare 4 calcoli NON VIDEO?
ecco, quasi ogni volta che si parla di aggiungere risorse hw per uno specifico scopo, arriva il genio con la parafrasi del luogo comune "se non si può fare anche senza questo e quello o con quello che arbitrariamente vorrei io, è colpa dei programmatori di oggi che non sanno fare un **zz* " :rolleyes:
dato che c'eri potevi anche aggiungere
"si stava meglio quando si stava peggio"
o
"non ci sono più le mezze stagioni"
:D
eventualmente, se chi lavora su queste cose è tanto incompetente, accomodati a migliorare le cose, magari ne ottieni eterna gloria e gonfi anche il portafoglio... ;)
JohnPetrucci
31-05-2006, 15:27
Credo che si tratti di un approccio interessante alla fisica nei giochi, vedremo se si realizzerà concretamente e soprattutto se sarà valido.
MenageZero
31-05-2006, 15:37
Pià andranno avanti i multicore + i programmatori dovranno adeguarsi per sfruttare appieno la potenza del processore, fare gestire un engine ad un core dovrebbe essere una cosa facile perchè la stessa definizione di "engine" lo fa pensare come una cosa "a se stante" a cui dare input e da cui prendere output che richiede un calcolo pesante. Gli sviluppatori sicuramente si dovranno adeguare, qualunque sia la soluzione, a pensare ai giochi multithreaded. Sicuramente tutta la struttura del programma diventa + complicata ma sono i costi da affrontare per avere una architettura parallela.
Per quanto riguarda l'accelerazione di havoc e la differenziazione, torniamo alla questione che ho posto prima: c'è bisogno di una libreria standard per i calcoli fisici come sono le directx o le opengl per la grafica, altrimenti sarà il caos (come per 3dfx all'inizio).
Rassegnarsi all'implementazione dei driver da parte delle case di produzione significa sperare nella carità, e poi notoriamente i driver sono i pezzi + buggati di sw che esistano soprattutto quelli video :P, serve appunto come dici tu un layer intermedio, cioè una libreria :)
guarda, ribadisco solo che forse il punto è che le attuali gpu o ppu, detta in termini assolutamente barbari per sintesi, posso andare molto ma molto megilio delle attuali o prossime cpu multicore nei "calcoli fisici", come hanno speigato pareri molto più competenti del mio, e quindi la scelta dell'hw per far girare i motori fisici forse sta andando più in quella direzione...
per quanto riguarda il tuo post qui sopra, aggiungo solo che anche a me "suona" probabile che potranno/dovrammo esserci significative modifiche nei metodi di sviluppo o che delle lib standard per la simulazione della fisica potrebbero essere una gran cosa (ma poi magari sbagliamo, chissà),
ma evito di andare da qui in poi in speculazioni personali evitando possibili baggianate colossali data la mia mancanza di competenza specifica nella programmazione di vg 3d e hw delle gpu a basso livello ed anche perché sono già intervenuti in questo thread altri utenti invece estermamente competenti in materia (in primis fek, suppongo) e quindi meglio lasciare a loro ulteriori spiegazioni, ipotesi, previsioni...
:)
MenageZero
31-05-2006, 15:44
bruttissima cosa... è inutile secondo me forzare a comprare 2 schede video (con quello che consumano) e poi 1 delle 2 (credo la meno potente) fargli fare la fisica. Con un prezzo di 250$ (non è molto) ti compri una PPU Ageia che è fatta x fare la fisica.Questo tralasciando il discorso che il problema qui non e' la potenza di calcolo in se', ma la banda passante che serve a trasferire i dati calcolati dalla CPU alla GPU per il rendering.hmm
:confused: cioè ? meglio ancora "fisica su gpu" che su ppu ageia ?
coschizza
31-05-2006, 16:10
:confused: cioè ? meglio ancora "fisica su gpu" che su ppu ageia ?
la ppu ha un vantaggio per gli sdk e perche è nata per questo (è un hardware quindi creato appositamente per fare 1 cosa), ma da un punto di vista puramente prestazionale la prima ppu disponibile ad oggi ha 20Gflops cioè circa 1/4 volte della potenza di un gpu moderna.
già il fatto che tutti i giochi che per ora usano la ppu vadano piu lenti che senza di essa (ovviamente solo quando viene generato l'effetto sulla ppu) dimostra che la tecnologia in questo campo è solo agli inizi, un po come le prime schede 3d per pc.......ma poi sappiamo dove siamo arrivati....
:confused: cioè ? meglio ancora "fisica su gpu" che su ppu ageia ?
Dipende :)
Se la CPU deve avere accesso molto frequente ai dati generati dalla simulazione, e' meglio tenere questi dati li' vicino in memoria centrale quindi una PPU potrebbe essere la soluzione migliore in questo. Immagino uno scenario in cui molti oggetti collidano l'uno con l'altro e queste collisioni vanno in qualche modo ad inficiare la situazione di gioco.
Se la CPU deve invece avere accesso piu' raramente, e' meglio che questi dati risiedano vicino alla GPU, che ha potenza elaborativa enorme ed e' subito in grado di consumare il risultato per il rendering.
L'approccio migliore dipende ovviamente dalla tipologia di gioco, ma non vedo il primo scenario particolarmente probabile.
MenageZero
31-05-2006, 16:41
la ppu ha un vantaggio per gli sdk e perche è nata per questo (è un hardware quindi creato appositamente per fare 1 cosa), ma da un punto di vista puramente prestazionale la prima ppu disponibile ad oggi ha 20Gflops cioè circa 1/4 volte della potenza di un gpu moderna.
già il fatto che tutti i giochi che per ora usano la ppu vadano piu lenti che senza di essa (ovviamente solo quando viene generato l'effetto sulla ppu) dimostra che la tecnologia in questo campo è solo agli inizi, un po come le prime schede 3d per pc.......ma poi sappiamo dove siamo arrivati....
"più lenti che senza di essa" ma con "maggiore" simulazione fisica quando usano la ppu, o identica che senza ppu, con i gli stessi "calcoli fisici" eseguiti dalla cpu(o già gpu ?) ?
se fosse il secondo caso: :eek: tale ppu ageia sarebbe ad ora un prodotto assolutamente invendibile...
MenageZero
31-05-2006, 16:48
Dipende :)
Se la CPU deve avere accesso molto frequente ai dati generati dalla simulazione, e' meglio tenere questi dati li' vicino in memoria centrale quindi una PPU potrebbe essere la soluzione migliore in questo. Immagino uno scenario in cui molti oggetti collidano l'uno con l'altro e queste collisioni vanno in qualche modo ad inficiare la situazione di gioco.
Se la CPU deve invece avere accesso piu' raramente, e' meglio che questi dati risiedano vicino alla GPU, che ha potenza elaborativa enorme ed e' subito in grado di consumare il risultato per il rendering.
L'approccio migliore dipende ovviamente dalla tipologia di gioco, ma non vedo il primo scenario particolarmente probabile.
quindi un videogiocatore(cosa che io non sono, anche se appassionato delle relative tecnologie) interessato al top, a breve e medio termine farebbe cmq bene ad eveitare di spendere soldi per una ppu e metterli solo in una gpu(o due) il più potenti possibili e magari a shader unificati (quando escono) ? e per quelle che ci sono ora, come efficenza dell'architettura anche per eventuale "programmazione fisica", meglio ati o nvidia ? e, sempre in questo contesto, da quel che si sa ora, meglio r600 o g80 ?
ehm, forse ho esagerato e sono un po' **lloso con tutte queste domande probabilmente banali, sorry :p
+Benito+
31-05-2006, 18:24
benvenga che si sfrutti bene l'hardware a disposizione, ma mi sembra del tutto ASSURDO poter pensare di utilizzare una sceda video non per quello per cui è stata progettata e costruita, ma per altro. Cioè, devo comprare una sceda con tutti i suoi circuiti fatti per rendere un'immagine a video...per fare dei calcoli sulle accelerazioni dei vertici dei poligoni di una scena 3D? Non mi sembra una cosa sensata. Se è possibile sfruttare la propria scheda video per farlo, con incrementi prestazionali o di qualità, è un altro discorso, ma usare una scheda che non deve fare quello proprio non mi torna. Io non sono un programmatore, e di programmazione so veramente poco, ma ho letto molto in giro per il web probabilmente tante cagate e tante cose serie, mi sembra di aver tratto la conclusione seguente: dato che una volta c'era pochissima potenza di elaborazione disponibile, si cercava un0ottimizzazione spinta del codice programmando ad un livello più basso per spremere al massimo quello che si aveva a disposizione. Con la'umento enorme della densità di potenza, si è preferito, essenzialmente per problemi di costi di sviluppo, puntare ad una programmazione di più alto livello e meno in grado di utilizzare a fondo le capacità computazionali dell'hardware. Mi sembra veramente insensato poter pensare che una cpu che adesso è single core e fa girare un gioco 3D, una volta triplicata nella potenza di calcolo non sia minimamente in grado di poter eseguire calcoli aggiuntivi, di qualsivoglia tipo essi siano. Non si tratta di simulare il mondo, ma di aumentare il realismo dei giochi. Probabilmente tra 10 o 15 anni effettivamente sarà possibile avere videogiochi strapieni di oggetti tutti i quali sia possibile interagire, ma sarà una cosa progressiva che passerà per lo sviluppo di strutture sia hardware che software, come è sempre stato. Pensare che adesso si voglia di botto avere il modno realistico dentro un normale pc e per fare cio' scendere a compromessi come utilizzare schede aggiuntive su schede aggiuntive non mi sembra utile nè sensato. Partire dal presupposto che utilizzare le risorse che a breve saranno disponibili da parte di cpu e gpu non siano idonee e che servano altre schede o altre gpu per fare dei calcoli per me è un approccio che non ha niente a che vedere con lo sfruttamento razionale della tecnologia: visto che possiamo permetterci di usare 1000, perchè usare 900?...perchè per esempio utilizzare un pc che consuma 300W quando abbiamo la linea residenziale da tre kW? E allora aggiungiamo di volta in volta delle nuove unità di elaborazione fin quando ci renderemo conto che stiamo sprecando la tecnologia che abbiamo creato solo perchè possiamo permettercelo.
mentalrey
01-06-2006, 02:34
Non sono affatto contento di una soluzione aigea, mi manca solo un altro
monopolizzatore di mercato tra i piedi.
Aigea vende un sdk per un motore fisico che e' propietario Aigea,
per il cui sfruttamento i programmatori di giochi, probabilmente
devono pagare royalty.
I giocatori devono pagare la scheda e se non la hanno in teoria il gioco
butta la fisica, dove?
In un ipotesi di concorrenza avremmo magari nvidia che se ne esce con una
sua scheda per la fisica...che fa, paga i diritti ad aigea per sfruttare il suo motore fisico? Bleah
Cominciamo veramente con delle librerie scritte per la fisica e che possano
reindirizzare i calcoli dove c'e della potenza a disposizione. Possibilmente non librerie microsoft, ma librerie aperte come OpenAL e OpenGL
E preghiamo che trovino uno standard che non coincida solo con
lo sfruttamento dei portafogli degli utenti.
Comprare oggi una scheda aigea significa godere di magari 3
giochi sul mercato che la sfruttino, che sono programmati in modo
da essere giocabili anche su computer che non la hanno.
Che probabilmente case come ati e nvidia sposteranno il mercato videogiochi verso di loro,
con una conseguente programmazione di giochi che sfrutteranno la fisica
sulle gpu e non sulle aigea.
Direi che per ora e' un bel pastrocchio, e i core in piu' delle cpu,
sono ancora li a grattarsi perche' tutti vogliono di botto 100.000
oggetti fisicamente in movimento, quando ora ce ne sono 50
e tutti considerano il core in piu' quasi un peso.
Auspico per un ritorno alla programmazione un poco piu' profonda
con la quale un gioco che ora scatta, potrebbe probabilmente
girare senza problemi sul mio hardware senza bisogno di una spesa aggiuntiva da parte mia.
mentalrey
01-06-2006, 02:47
Edit Aigea "Offre" un sdk non lo vende.
scusa, e le sh che usano i motori id, ad esempio, non gli pagano le royalties?
mi sembra un discorso campato un pò in aria, oltre al fatto che anche tra un gioco normale e uno glide potevi giocare ad entrambi, solo che la differenza era talmente grande che le 3dfx, benché costose, ritenute un di più, chiuse (glide era chiuso, non era opengl) ebbero quel successo che molti hanno conosciuto.
Ma poi fecero la fine che tutti sappiamo.
si, ma quello fu a causa di errori come le v4000, v6000 etc.
3dfx si dette la zappa sui piedi con la banshee imho
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.