Domanda

Ho una rete neurale scritta in Erlang e ho appena acquistato una scheda GeForce GTX 260 con una GPU da 240 core. È banale usare CUDA come colla per eseguire questo sulla scheda grafica?

È stato utile?

Soluzione

No, usare CUDA non è cosa da poco.

Il modello di programmazione CUDA utilizza fondamentalmente C (con alcune aggiunte) ma per ottenere il massimo dalle capacità della GPGPU dovresti assicurarti che i tuoi algoritmi seguano le linee guida CUDA. (vedi Guida alla programmazione NVidia CUDA )

Ad esempio, al fine di ottenere le migliori prestazioni di memoria (da qualche parte intorno a 70 Gbps) è necessario accedere alla memoria in modalità streaming con coalescenza, inoltre i rami sono molto costosi sulle GPU, quindi è necessario evitare il più possibile i condizionali. Consulta la guida e gli esempi forniti con l'SDK, che forniranno un eccellente punto di partenza

Altri suggerimenti

Vorrei poterti dire come fare con Erlang ... ;-), ma almeno Satnam Singh di MS Research ha svolto un lavoro molto interessante con Haskell (Lava) e F #. Forse questo documento può darti alcune intuizioni su come potrebbe essere fatto:

http://research.microsoft.com/en-us/people/ satnams /

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