我正在考虑向我的老板要一个好的GPU,以便用matlab并行处理工具箱进行计算。然而,在同事的电脑上进行了一些简单的测试后,在NVidia Quadro600上。我得到了非常差的性能增益(在1倍到2倍之间)。
我对n-d数组上的卷积特别感兴趣。
有没有人有过类似的经历,用gpuArray做计算之类的?
我可以期待什么性能提升?
我应该买什么型号的GPU (低于1000美元,希望低于400美元)?
发布于 2011-12-08 15:58:44
gpuArray在MATLAB中的性能由以下几个因素驱动:
这里有一个优秀的‘随机行走’博客上的一些基准的例子:http://www.walkingrandomly.com/?p=3634。这些显示了在合理的应用程序中可能期望的加速类型-即~5倍到10倍是合理的,比罕见的多得多。
(如果你想看看这些罕见的例子,使用gpuArrays和arrayfun编程的图形处理器上的Mandelbrot set运行速度大约是CPU的1500倍:http://www.mathworks.com/products/demos/parallel-computing/paralleldemo_gpu_mandelbrot/paralleldemo_gpu_mandelbrot.html?product=DW )
发布于 2011-12-08 08:02:52
与拥有480个内核的GeForce 480和拥有512个内核的GeForce 580相比,Quadro400只有48个内核。它们也都以更高的时钟运行,因此当内存访问不是限制因素时,您可以预期获得超过10倍的性能提升。
我没有使用GPU来加速MATLAB,但我每天都有用于GPU (CUDA)开发的PC。一台是Quadro FX5800 + GeForce 480,另一台是GeForce 580。据我所知,与GeForce相比,您不会从工作站卡中获得任何好处。所以节省一些$$$,并获得一个GF480或GF580。
这个线程似乎有一个CUDA加速的卷积函数,显然快了50倍:http://www.mathworks.com/matlabcentral/fileexchange/20220我不确定MATLAB有什么开箱即用的功能。
希望这能有所帮助!GPU可以很好地加速许多任务。但性能提升可能需要一些追逐。
发布于 2013-11-01 02:54:17
我目前正在研究同样的话题。我看到的一件事是,中低档显卡是为游戏而设计的,因此针对FP32性能进行了优化。因此,他们的FP64性能明显滞后,这可能就是您所看到的。售价1000美元的GTX泰坦似乎是严肃科学计算的起点。
https://stackoverflow.com/questions/8418957
复制相似问题