why using gpu.Array.zeros I have error Undefined variable "parallel" or class "parallel.​gpu.gpuArr​ay.zeros" ?

the line of the code is: gpu = gpuDevice(); Z = parallel.gpu.gpuArray.zeros(8192, 1); Undefined variable "parallel" or class "parallel.gpu.gpuArray.zeros".

 Accepted Answer

What version of MATLAB are you using?
In R2010b-R2012a releases, the GPU object was named parallel.gpu.GPUArray. In those releases you would create an array of all zeros on the GPU using:
z = parallel.gpu.GPUArray.zeros(8192,1);
In R2012b, the GPU object was renamed to gpuArray, so in R2012b and onward you would create the same array using this line of code:
z = gpuArray.zeros(8192,1);

2 Comments

I have R2012b, but I tried both variants. None of them work.
I found my mistake: I used z = parallel.gpu.gpuArray.zeros(8192,1); but the rigth is z = parallel.gpu.GPUArray.zeros(8192,1);
So the problem was in the non-capital letters '..gpuArray..'
Thank you!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!