I am thinking about asking my boss for a good GPU, in order to perform computing with matlab parallel processing toolbox. However, after some simple tests on a colleague's computer, on a NVidia Quadro 600. I get very poor performance gain (between 1x and 2x).
I am especially interested in doing convolutions on n-d arrays.
Do someone have a similar experience, doing computing with gpuArray and so on?
What performance gain can I expect?
What GPU model should I buy (less than 1000$, hopefully less than 400$)?
The performance of the gpuArray in MATLAB is driven by several factors:
Here's an example of some benchmarks on the excellent 'Walking Randomly' blog: http://www.walkingrandomly.com/?p=3634 . These show the kinds of speedup one might expect in reasonable applications - i.e. ~5x to 10x is plausible, much more than that is rare.
(If you'd like to see one of those rare examples, the Mandelbrot set on the GPU programmed using gpuArrays and arrayfun runs about 1500x faster than the CPU: http://www.mathworks.com/products/demos/parallel-computing/paralleldemo_gpu_mandelbrot/paralleldemo_gpu_mandelbrot.html?product=DW )
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With