Gather cell array from GPU to CPU

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

 採用された回答

Joss Knight
Joss Knight 2019 年 11 月 1 日

2 投票

A_cpu = cellfun(@gather, A_gpu, 'UniformOutput', false);

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeGPU Computing についてさらに検索

質問済み:

Ted
2019 年 11 月 1 日

回答済み:

2019 年 11 月 1 日

Community Treasure Hunt

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

Start Hunting!

Translated by