GPU比CPU时间慢,我的GPU实现了什么毛病?

5视图(30天)
你好,我一直在测试在MATLAB GPU计算特性。下面的代码是运行和时机大矩阵乘法(1024 x1024)使用CPU和GPU计算:
一个=兰德(1024);
gA = gpuArray(一个);
%热身
i = 1:10
C =一个*;
gC = gA *遗传算法;
结束
抽搐,C =一个*,toc;
抽搐,gC = gA *遗传算法;toc;
经过多次试验,结果使用CPU是速度比GPU的时间。我感到惊讶,因为这家伙stackoverflow论坛上做了精确的测试和他证明使用GPU更快:
> > =兰德(1024);gA = gpuArray(一个);
%热身通过执行操作几次,然后:
> >抽搐,C =一个*;toc
运行时间是0.075396秒。
> >抽搐,gC = gA *遗传算法;toc
运行时间是0.008621秒。
我能想到的唯一原因是,我们使用的是不同的gpu。另一个人有一个特斯拉C2070虽然我使用笔记本电脑是戴尔Inspirion17R (NVIDIA GeForce GT 525)。
可能是有可能通过使用一个较小的GPU,计算实际上是低于使用CPU ?
谢谢你!Ruby
1评论
ALysko
ALysko 2015年4月14日
一点额外的信息关于双精度性能:
特斯拉C2070和GeForce GT 525是两个截然不同的gpu:特斯拉C2070: 1.03 tflops / 0.515 tflops(单/双精度)GeForce GT 525: 0.23 tflops / 0.031 tflops
泰坦黑色可能需要手动切换到启用双精度:
1)web页面 http://nvidianews.nvidia.com/news/nvidia-introduces-geforce-gtx-titan-dna-of-the-world-s-fastest-supercomputer-powered-by-world-s-fastest-gpu 44页的PDF”geforce - update - 2月- 2014年。pdf”说泰坦黑色单精度浮点运算的5.1双Precision1.3浮点运算
2)网页 http://www.bit-tech.net/news/hardware/2014/02/18/nvidia-gtx-titan-black-launched/1 比较了泰坦黑只是泰坦(由Mathworks测试):泰坦布莱克:5.1 tflops / 1.2 tflops泰坦:4.5 tflops / 1.3 tflops
(因此,泰坦的基准Mathworks应该相同或比泰坦黑色的基准)
3)页面https://devtalk.nvidia.com/default/topic/716573/gtx-titan-double-precision-flops-way-off-specs/专门谈论Mathworks基准与gpuBench ():
任何更改之前(默认设置):MTimes_D Backslash_D FFT_D MTimes_S Backslash_S FFT_S特斯拉C2075 333 246 73 696 435 163 GF GTX泰坦223 82 77 3635 179 252
(换卡后进入控制面板双精度):MTimes_D Backslash_D FFT_D MTimes_S Backslash_S FFT_S特斯拉C2075 333 246 73 696 435 163 GeForce GTX泰坦1285 128 146 3423 182 227

登录置评。

接受的答案

本Tordoff
本Tordoff 2012年1月20日
嗨,红宝石,
我刚刚上传的文件交换的基准测试工具运行负载的这些类型的时间把你的GPU在上下文与他人在市场上:
要记住的一件事是,几乎所有的gpu没有显式地为科学计算优化设计为单精度数学(使用OpenGL等)。GeForce卡、移动或否则,单精度性能不错,但通常是双8 x。MATLAB默认使用双精度无处不在。NVIDIA的卡片,只有特斯拉和高端住宅区系列在双精度。加上一个移动GPU通常比台式机更少的核心,我很惊讶,如果你看到任何重大的加速而现代移动CPU时双精度数学。
总之,尝试基准,让我们都知道你会发现。
干杯

答案(1)

沃尔特·罗伯森
沃尔特·罗伯森 2012年1月19日
你的GeForce 525 GT将处理图形渲染,而特斯拉可能不会处理图形(和可以专门配置了图形的职责,我似乎记得)。
GT 525有96芯高达1.2 GHz;特斯拉C2070在1.15 GHz - 448核芯的4倍。
2的评论
沃尔特·罗伯森
沃尔特·罗伯森 2012年1月19日
我只知道一些大纲的东西是如何工作的。我知道时间来加载和卸载数据可以使用gpu压倒的优势。足够大的矩阵乘法在CPU通常外包给LAPACK高度优化和使用多核。“足够”的权衡点理论取决于CPU使用,但是我不知道如果MATLAB需要的账户。你需要知道的相对CPU能力比较GPU / CPU数据有意义。
我相信Accelereye的夹克是基准速度比本机MATLAB GPU。

登录置评。

类别

找到更多的在GPU计算帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!