[問題]令人摸不透的CUDA@MATLAB
最近開始在玩MATLAB的parallel computing box,
因為對GPU加速有點興趣,所以做了一些簡單的測試。
---------------實驗一分隔線----------------
第一個是在R2012a Win7x64的環境下跑的,RAM 32GB
CPU和GPU分別是i5-3470@ 3.2GHz和GTX660
下面的矩陣相乘測試,怎麼跑GPU都比CPU慢.....
dim = 4000;
A = rand(dim);
B = rand(dim);
tic;
A*B;
toc;
gpuA = gpuArray(rand(dim));
gpuB = gpuArray(rand(dim));
tic;
gpuA*gpuB;
toc;
reset(gpuDevice());
可是跑Help中Parallel computing box的
Running MATLAB® Functions on the GPU的example code GPU確實比較快
---------------實驗二分隔線----------------
第二個是在R2012b Win7x64的環境下跑的 RAM 16GB
CPU和GPU分別是i7-3770@ 3.5GHz和GTX650
在同樣的測試中,GPU非常明顯的比CPU快,但是有一個有趣的問題
如果將gpuArray(rand(dim))改成用gpuArray.rand(dim)去initial的話,
在相乘時的速度會變慢!!!但還是比CPU快
請問有哪位大大知道問題在哪嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.146.71
→
02/13 12:21, , 1F
02/13 12:21, 1F
推
02/13 18:45, , 2F
02/13 18:45, 2F
→
02/13 18:46, , 3F
02/13 18:46, 3F