Info
此问题已关闭。 请重新打开它进行编辑或回答。
How to increase the speed of submatrix data transfer using gpuArray rather than CPU?
1 次查看(过去 30 天)
显示 更早的评论
Hello. My problem is... How can I reduce the difference btw. them? The size of matrix is smaller than 1000 by 1000. If possible (whether this is intrinsic limitation) please tell me a proper method.
A = rand(512);
gA = gpuArray(A);
tic; B = A(50:100,50:100); toc
tic; gB = gA(50:100,50:100); toc
0 个评论
回答(2 个)
Walter Roberson
2016-4-6
Instead of using tic and toc, use timeit() for the first case, and gputimeit() for the second case. Those will give you more accurate times.
1 个评论
Joss Knight
2016-4-15
I think the problem is intrinsic. Even on my Kepler K20c the GPU is slower for this case. This is a memory intensive non-coherent operation and you don't have enough data.
Best solution: Try to do more! Perhaps if you're doing this same indexing to multiple matrices, you should do them all at once, for instance.
0 个评论
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!