首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用matlab的GPU带来的性能提升是什么?

使用matlab的GPU带来的性能提升是什么?
EN

Stack Overflow用户
提问于 2011-12-08 00:37:54
回答 3查看 4.7K关注 0票数 5

我正在考虑向我的老板要一个好的GPU,以便用matlab并行处理工具箱进行计算。然而,在同事的电脑上进行了一些简单的测试后,在NVidia Quadro600上。我得到了非常差的性能增益(在1倍到2倍之间)。

我对n-d数组上的卷积特别感兴趣。

有没有人有过类似的经历,用gpuArray做计算之类的?

我可以期待什么性能提升?

我应该买什么型号的GPU (低于1000美元,希望低于400美元)?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-08 15:58:44

gpuArray在MATLAB中的性能由以下几个因素驱动:

  • 你的问题是否很好地运行在图形处理器上首先
  • 你的设备中有多少个CUDA核心,一般来说,越多越好
  • 无论你是否正在使用一个具有增强的双精度性能的设备(例如最近的Quadro/Tesla设备的计算能力>= 2)
  • 你正在使用哪个版本的MATLAB - R2011b的性能明显好于R2010b。

这里有一个优秀的‘随机行走’博客上的一些基准的例子: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 )

票数 2
EN

Stack Overflow用户

发布于 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可以很好地加速许多任务。但性能提升可能需要一些追逐。

票数 1
EN

Stack Overflow用户

发布于 2013-11-01 02:54:17

我目前正在研究同样的话题。我看到的一件事是,中低档显卡是为游戏而设计的,因此针对FP32性能进行了优化。因此,他们的FP64性能明显滞后,这可能就是您所看到的。售价1000美元的GTX泰坦似乎是严肃科学计算的起点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8418957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档