MATLAB并行工具箱GPU加速测试
cpu是AMD的FX8350(16G内存)
显卡是公版NV的GTX780(3G显存)
数组大小为:
a=rand(10000000,1,'single');一千万个内存数据。
b=gpuArray(a);一千万个显存数据。
分别测试了4个算法:
如下:
abs
Elapsed time is 0.019868 seconds.
Elapsed time is 0.003981 seconds.
<
Elapsed time is 0.013247 seconds.
Elapsed time is 0.001518 seconds.
sin
Elapsed time is 0.026245 seconds.
Elapsed time is 0.000360 seconds.
log
Elapsed time is 0.035129 seconds.
Elapsed time is 0.005912 seconds.
fft
Elapsed time is 0.140428 seconds.
Elapsed time is 0.007374 seconds.
总结:GPU速度在不同程度上高于CPU速度,而sin,fft这些复杂点的更是快的恐怖。
不过GPU要注意一些东西:
1.数据量不能超过显存。比如这里数据是1亿个,GPU就会报错(其实CPU也一样,超过内存也报错,10亿个则cpu也报错)。
好男孩上天堂,坏男孩走四方……
浙公网安备 33010602011771号