I run the example "Stencil Operations on a GPU" in matlab command. I got following output. I don't have any advantage in using of Arrayfun on GPU compared with simple GPU array. my GPU device is GeForce GTX 980 Ti. is it reasonable?

4 visualizzazioni (ultimi 30 giorni)
paralleldemo_gpu_stencil
Average time on the CPU: 1.906ms per generation.
Average time on the GPU: 0.792ms per generation (2.4x faster).
Average time using GPU arrayfun: 0.996ms per generation (1.9x faster).
CPU: 1.906ms per generation.
Simple GPU: 0.792ms per generation (2.4x faster).
Arrayfun GPU: 0.996ms per generation (1.9x faster).

Risposta accettata

Joss Knight
Joss Knight il 26 Feb 2016
Yes, it's perfectly reasonable.
  2 Commenti
masoumeh mousavi
masoumeh mousavi il 26 Feb 2016
Modificato: masoumeh mousavi il 26 Feb 2016
thank you, is it the reason due to the kind of GPU? I expected more computational speed using arrayfun on GPU as claimed!(it means the usage of arrayfun strictly depends on the kind of GPU!?)
Joss Knight
Joss Knight il 2 Mar 2016
The speed of everything you do on the GPU depends on the kind of GPU. You should always experiment with different approaches and use whichever works best for you - we don't claim that arrayfun will always be the best approach. It looks like for your device MATLAB is doing a great job of making the simplest approach the fastest, which is ideal.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by