J'ai reçu un ordinateur avec Tesla K80 4xGPU et j'essaie les boucles parfor de Matlab PCT pour accélérer le calcul de FFT et c'est encore plus lent.Plusieurs GPU Tesla K80 et boucles parfor
Voici ce que je suis en train:
% Pupil is based on a 512x512 array
parfor zz = 1:4
gd = gpuDevice;
d{zz} = gd.Index;
probe{zz} = gpuArray(pupil);
Essai{zz} = gpuArray(pupil);
end
tic;
parfor ii = 1:4
gd2 = gpuDevice;
d2{ii} = gd2.Index;
for i = 1:100
[Essai{ii}] = fftn(probe{ii});
end
end
toc
%%
Starting parallel pool (parpool) using the 'local' profile ... connected to 4 workers.
Elapsed time is 1.805763 seconds.
Elapsed time is 1.412928 seconds.
Elapsed time is 1.409559 seconds.
Starting parallel pool (parpool) using the 'local' profile ... connected to 8 workers.
Elapsed time is 0.606602 seconds.
Elapsed time is 0.297850 seconds.
Elapsed time is 0.294365 seconds.
%%
tic; for i = 1:400; Essai{1} = fftn(probe{1}); end; toc
Elapsed time is 0.193579 seconds !!!
Pourquoi ouverture 8 travailleurs plus rapide que, en principe, j'emmagasinés mes variables dans 4gpu est seulement (sur 8)?
De même, comment utiliser un Tesla K80 comme un seul GPU?
Merci, Nicolas
Le GPU K80 est une carte GPU multi-chip. Chaque K80 fournit deux GK210 (chacun avec GDDR5 de 12 Go). Ces deux puces sont connectées via un commutateur PCIe. Du point de vue de l'utilisateur (CUDA, etc.), chaque carte K80 contient deux GPU, il est donc possible que vos 8 travailleurs proviennent de 4 cartes x 2 = 8 GPU disponibles. – Hopobcn