Gather cell array from GPU to CPU

11 visualizzazioni (ultimi 30 giorni)
Ted
Ted il 1 Nov 2019
Risposto: Joss Knight il 1 Nov 2019
Hello,
I have a cell array (let's call it 'A_gpu') where each cell contains a matrix which has been allocated on GPU device. I want to migrate the matrices onto CPU memory and still organize them in the same cell array format as before.
I tried
A_cpu = gather(A_gpu);
Then, I check the allocation of A_cpu. Unfortunetly, they are still on the GPU. Task failed.
The intuitive solution will be gathering the matrix at each cell individually and loop over the cells. I am wondering whether there is a short function, maybe a Matlab built-in function that I may not be aware of, that can help me relocate the cell array from GPU to CPU.
Thank you,
Ted

Risposta accettata

Joss Knight
Joss Knight il 1 Nov 2019
A_cpu = cellfun(@gather, A_gpu, 'UniformOutput', false);

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by