Speed up a for loop by utilizing a gpu
17 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
tiwwexx
el 30 de Jun. de 2022
Respondida: tiwwexx
el 30 de Jun. de 2022
Hello, I'm trying to speed up the following for loop
for n=1:size(Q_test,3)
Q_test(:,:,n) = sigma(n) / 2 / mass(n) * Q_in(:,:,n);
end
I tried implementing this with all the above arrays being gpuArrays and running
Q_gpu = arrayfun(@scale_Q,sigmaE_gpu,mass_gpu,Q_gpu,size(Q_gpu,3));
function output = scale_Q(sigma,mass,Q_in,itterations)
output = zeros(size(Q_in),'single');
for n=1:itterations
output(:,:,n) = sigma(n) / 2 / mass(n) * Q_in(:,:,n);
end
end
but I get the error
"Error using gpuArray/arrayfun
Arrays have incompatible sizes for this operation."
% Error using gpuArray/arrayfun
% Arrays have incompatible sizes for this operation.
Any help would be appriciated!
0 comentarios
Respuesta aceptada
Más respuestas (0)
Ver también
Categorías
Más información sobre GPU Computing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!