Create array on GPU
G = gpuArray(X)
G = gpuArray(X) copies the numeric array X to
the GPU, and returns a gpuArray object.
You can operate on this array by passing its gpuArray to the feval method of a CUDA kernel object,
or by using one of the methods defined for gpuArray objects in Establish Arrays on a GPU.
The MATLAB array X must be numeric (for example: single, double, int8,
etc.) or logical, and the GPU device must have sufficient free memory
to store the data.
If the input argument is already a gpuArray, the output is the same as the input.
Use gather to retrieve the array from the
GPU to the MATLAB workspace.
Transfer a 10-by-10 matrix of random single-precision values to the GPU, then use the GPU to square each element.
X = rand(10,'single');
G = gpuArray(X);
classUnderlying(G)single
G2 = G .* G; % Performed on GPU whos G2 % Result on GPU
Name Size Bytes Class G2 10x10 108 gpuArray
Copy the array back to the MATLAB workspace.
G1 = gather(G2);
whos G1Name Size Bytes Class G1 10x10 400 single
arrayfun | bsxfun | existsOnGPU | feval | gather | parallel.gpu.CUDAKernel | reset