Converting parfor operations to gpuArray
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I have a working parallel version of a code that does some likelihood calculations on a reasonably large matrix in parallel (using parfar) It is a trivially parallel operation as the calculation is performed column-wise & the parfor is employed to operate on the columns of data (one worker per column)
How could I achieve the same thing using a GPU (since the matrix is quite big & I have limited number of workers). All the operations are all GPU supported functions (matrix algebra ones like eig, diag & matrix multiplications only )
ie.,
data = 1000 by 200 (1000 rows by 200 cols matrix)
[nrows, ncols] = size(data);
parfor ix = 1:ncols
workerData = data(:,ix);
likelihood(ix) = funcCalcLikelihood(workerData, params);
end
This is fast enough. But i need to repeat such calculations many times so as to do a parameter sweep, so any speed increment will be good. Also, since my dataset is getting bigger (ncols = 1500 & I only have 144 max workers)
I have 2 Tesla (c2050) GPUS and was wondering if I could convert this into a gpuArray operation.
Thanks for your inputs.
3 comentarios
Respuestas (0)
Ver también
Categorías
Más información sobre GPU Computing in MATLAB en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!