Domanda

Cosa pensi del futuro della GPU come CPU iniziative come CUDA sono?Pensi che stanno andando a diventare mainstream e di essere il prossimo adottato fad nel settore?Apple sta costruendo un nuovo quadro per l'utilizzo di GPU per fare operazioni della CPU e c'è stato un sacco di successo nel Nvidias CUDA progetto di scienze.Suggerirebbe che una studente di impegnare il tempo in questo campo?

È stato utile?

Soluzione

Prima di tutto non credo che questa domanda appartiene realmente COSÌ.

A mio parere la GPU è un'alternativa molto interessante ogni volta che si fa vettoriale float matematica.Tuttavia, questo si traduce in:Non diventare mainstream.Più mainstream (Desktop) applicazioni fare pochi calcoli a virgola mobile.

Si è già guadagnato la trazione, giochi di fisica-motori) e nel calcolo scientifico.Se si considera una qualsiasi di queste due come "mainstream", che sì, la GPU diventerà mainstream.

Non vorrei prendere in considerazione questi due tradizionali, e quindi, a mio avviso, la GPU si alza di essere il prossimo adottato fad nell'industria mainstream.

Se si, come uno studente qualsiasi interesse pesantemente fisica basata su calcoli scientifici, si dovrebbe assolutamente dedicare parte del proprio tempo ad esso (Gpu sono molto interessanti pezzi di hardware, comunque).

Altri suggerimenti

La fase di Commit se siete interessati a scientifica e di elaborazione in parallelo.Non credo di CUDA e fare una GPU apparire come una CPU.Esso consente solo di un metodo più diretto di programmazione Gpu più vecchie GPGPU tecniche di programmazione.

Scopo generale Cpu derivano la loro capacità di lavorare bene su un'ampia varietà di attività di tutto il lavoro che è andato in un branch prediction, pipelining, superscaler, etc.Questo rende possibile per loro di ottenere buone prestazioni su una vasta gamma di carichi di lavoro, rendendoli succhiare a high-throughput intensivo di memoria di operazioni in virgola mobile.

Le gpu sono stati originariamente progettati per fare una cosa, e fare molto, molto bene.Operazioni di grafica sono intrinsecamente parallelo.È possibile calcolare il colore di ogni pixel sullo schermo allo stesso tempo, perché non ci sono dipendenze di dati tra i risultati.Inoltre, gli algoritmi necessari non avere a che fare con rami, dal momento che quasi ogni ramo che sarebbe richiesto può essere ottenuto impostando un co-efficiente di zero o uno.L'hardware potrebbe essere quindi molto semplice.Non è necessario preoccuparsi di branch prediction, e invece di fare un processore superscaler, si può semplicemente aggiungere come molti ALU come si può stipare sul chip.

Programmabile con texture e vertex shaders, GPU guadagnato un percorso generale di programmazione, ma sono ancora limitati dall'hardware, che è ancora stato progettato per l'alta velocità effettiva di operazioni in virgola mobile.Alcuni circuiti aggiuntivi sarà probabilmente aggiunto per consentire una più generale finalità di calcolo, ma solo fino a un certo punto.Tutto ciò che compromette la capacità di una GPU per fare la grafica non fare in.Dopo tutto, GPU aziende sono ancora in attività di grafica e il mercato di riferimento è ancora giocatori e le persone che hanno bisogno di fascia alta di visualizzazione.

Il GPGPU mercato è ancora una goccia nel mare, e in una certa misura, rimarrà così.Dopo tutto, il "sembra" è molto più basso livello per incontrare di "100% garantita e risultati riproducibili, ogni volta."

Così, in breve, GPU sarà mai fattibile come CPU.Sono semplicemente progettati per diversi tipi di carichi di lavoro.Mi aspetto GPU otterrà caratteristiche che li rendono utili per la rapida soluzione di una più ampia varietà di problemi, ma saranno sempre grafica unità di elaborazione in primo luogo.

Sarà sempre importante per abbinare sempre il problema che si ha con lo strumento più appropriato è risolvere il problema.

A lungo termine, penso che la GPU cesserà di esistere, come general purpose i processori evolversi di assumere tali funzioni. Intel Larrabee è il primo passo.La storia ha dimostrato che le scommesse contro x86 è una cattiva idea.

Studio di architetture a parallelismo massivo e di elaborazione vettoriale sarà ancora utile.

GPU non potrà mai soppiantare CPU.Una CPU esegue una serie di istruzioni sequenziali, e una GPU fa un tipo molto particolare di calcolo in parallelo.Queste GPU hanno una grande utilità nel calcolo numerico e grafica;tuttavia, la maggior parte dei programmi non può in alcun modo utilizzare questo sapore di calcolo.

Si inizierà presto a vedere il nuovo processers Intel e AMD che includono GPU-esque in virgola mobile vettoriale dei polinomi di standard CPU calcoli.

Credo che sia la strada giusta da percorrere.

Considerando che Le gpu sono stato sfruttato per creare un mercato dei supercomputer., sembra essere la naturale evoluzione delle cose.Con tanta potenza di calcolo e di R&D già fatto per voi, perché non sfruttare la tecnologia a disposizione?

Quindi, andare avanti e farlo.Sarà qualche fresco di ricerca, così come un legittimo motivo di comprare un high-end scheda grafica così si può giocare a Crysis e Assassin's Creed a pieno dettaglio grafico ;)

La sua una di quelle cose che si vedono 1 o 2 applicazioni, ma abbastanza presto qualcuno verrà con un 'killer app' che figure come fare qualcosa in più generalmente utile, a superfast velocità.

I Pixel shader per applicare le procedure per grandi array di valori float, forse vedremo qualche GIS copertura applicazioni o bene, non so.Se non si dedicano più tempo ad esso che ho poi avrai lo stesso livello di approfondimento come me - vale a dire poco!

Ho la sensazione che potrebbe essere una cosa davvero grande, come Intel e S3, forse ha solo bisogno di 1 po ' di tweak aggiunta di hardware, o qualcuno con una lampadina sopra la loro testa.

Con tanto di potenzialità inespresse e non riesco a vedere come sarebbe andato inutilizzato per troppo tempo.La domanda è, però, come la GPU sarà utilizzato per questo.CUDA sembra essere una buona ipotesi, per ora, ma altre tecnologie stanno emergendo all'orizzonte che potrebbe rendere più accessibile la media developer.

Apple ha recentemente annunciato OpenCL che dicono molto di più di CUDA, ma abbastanza semplice.Non so esattamente cosa fare, ma il khronos group (I ragazzi lavorano su standard OpenGL) stanno lavorando su OpenCL standard, e sta cercando di renderlo interoperabile con OpenGL.Questo potrebbe portare ad una tecnologia che è più adatto per il normale sviluppo del software.

E ' un argomento interessante e, per inciso, sto per iniziare la mia tesi di master sul tema di come impostare la potenza della GPU disponibili per la media degli sviluppatori (se possibile) con CUDA come l'obiettivo principale.

Molto tempo fa, era davvero difficile fare dei calcoli in virgola mobile (migliaia/milioni di cicli di emulazione per le istruzioni su terribilmente esecuzione (per gli standard di oggi) Cpu come il 80386).La gente che aveva bisogno di prestazioni in virgola mobile potrebbe ottenere una FPU (per esempio, il 80387.Il vecchio FPU sono stati abbastanza strettamente integrato nella CPU dell'operazione, ma non erano esterni.Successivamente è stato integrato, con il 80486 avere un FPU integrata.

Il vecchio-tempo FPU è analogo GPU di calcolo.Si può già ottenere con AMD Apu.Un'APU è una CPU con GPU integrata in esso.

Quindi, penso che la risposta vera alla tua domanda è che la GPU non diventare Cpu, invece CPU avrà una GPU integrata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top