Je veux accélérer mon algorithme car j'ai besoin de l'exécuter sur des centaines d'images, j'ai donc essayé d'utiliser du code GPU non vectorisé, en exécutant le même code sur GPU, j'ai nvidia Geforce GT 650M avec 2 Go sur mon PC, mais il était très lent que la version CPU. Après une recherche je suis convaincu de passer au code GPU vectorisé en utilisant le traitement par lots (pagefun, bsxfun), j'ai tellement essayé de résoudre ce problème sans solution. Quelqu'un peut-il m'aider à propos de ce code:Accélération de l'algorithme de traitement d'image sur GPU, traitement parallèle Matlab
Q=100;
for i=3:n-2
for j=3:m-2
A(i,j)=0;
for c=1:Q
if B(i,j,c)~=0
A(i,j)=A(i,j)+(-(B(i,j,c)).*log(B(i,j,c)));
end
end
end
end
Une autre question Pourquoi Matlab utilise seulement 20% de mon processeur? Comment puis-je tirer parti de mon processeur pour accélérer mon traitement
Est-ce que Matlab est une application à un seul thread?
Merci à l'avance
GpuArray ne nécessite-t-il pas encore une boîte à outils de calcul parallèle? – zhqiat
Oui, la boîte à outils parallèle est nécessaire pour gpuArray –
Merci beaucoup Airidas Korolkovas, mais je n'ai pas eu une grande amélioration dans le temps d'exécution, l'utilisation de pagefun peut améliorer le temps ou non? J'ai la boîte à outils parallèle. nvidea GT 650M – MAGNETAR