gpu support for sparse calculation : times function

2 次查看(过去 30 天)
The gpu support for matlab is so slow and going at snail's pace. Each release, seems like 1-2 functions are added which is sad and frustrating. For example, mtimes is supported but times is not. One can hardly implement anything with such a reduced capability. Are there other external ways to do this other than writing CUDA code which most people cannot.

回答(2 个)

Edric Ellis
Edric Ellis 2016-5-17
You're quite right that times is not currently supported for sparse gpuArray, although the scalar-expansion version of mtimes is supported, e.g.:
2 * gpuArray.sprand(10, 10, 0.1)
Presumably, you need non-scalar version of times for your code?
Looking at the Parallel Computing Toolbox release notes shows the new GPU functionality added in each release. Are there specific functions or families of functions that you'd like to see implemented?

Suresh
Suresh 2016-5-17
Thank you for your response Edric. Ideally, a lot of functions would be useful to have. Matrix operations will be quite useful, like mtimes(already there) and times, accumarray. Is this possible? Suresh
  2 个评论
Edric Ellis
Edric Ellis 2016-5-18
I'll add times for sparse gpuArray to our list for consideration to add. accumarray already supports sparse output on the GPU, like so:
N = 1000;
Sin = gpuArray(sprand(N, N, 0.1));
[I, J, V] = find(Sin);
Sout = accumarray([I J], V, [N N], [], [], true);
isequal(Sin, Sout) % Returns true
or did you mean something different?
Ben Ward
Ben Ward 2017-8-8
编辑:Ben Ward 2017-8-8
Hi, has there been any further progress on the development of times for sparse gpuArray?
Failing that, would you know of any work-arounds for element-wise multiplication of sparse arrays on a GPU? (without converting back to full)
Thanks

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 GPU Computing in MATLAB 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by