error with gpuarray transformation

>> A3 = gpuArray(q);
Error using gpuArray
Only full arrays of fundamental numeric types or logical types are
supported for GPU arrays.
i get the following error message. q is a cell array consisting of a matrices with many thousand rows.
my gpu is a cuda card with 4 gigabytes.
thanks

 采纳的回答

Matt J
Matt J 2014-12-18
编辑:Matt J 2014-12-19
q is not allowed to be a cell array. It must be a matrix or n-dimensional array. And it must be non-sparse.

6 个评论

Is there a solution to this problem?
No, you cannot put a cell array on the GPU. You can make a cell array containing gpuArrays if you wish, like so:
A = cellfun(@gpuArray, {1, 2, 3}, 'UniformOutput', false)
Not sure whether that's any use to you.
so any calculations I do after this will be transformed using gpu rather than cpU?
A = cellfun(@gpuArray, a, 'UniformOutput', false)
All operations on A{i} will be done on the GPU.
A = cellfun(@gather, a, 'UniformOutput', false) and this turns it back

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 GPU Computing 的更多信息

标签

提问:

AA
2014-12-18

评论:

AA
2014-12-21

Community Treasure Hunt

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

Start Hunting!

Translated by