複数のGPU カード並列に使用することはできますか?

10 visualizzazioni (ultimi 30 giorni)
MathWorks Support Team
MathWorks Support Team il 9 Nov 2016
Parallel Computing Toolbox (PCT) を使用する際に 1 台のコンピュータに複数の GPU カードが存在する場合、すべてまたは一部の GPU カードを使用するための方法を教えてください。 

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 18 Ago 2021
Modificato: MathWorks Support Team il 21 Set 2021
parfor や spmd を使用することで複数のGPUを同時に利用することができます。 
クライアントおよびワーカー上で動作する MATLAB のプロセスは1 つの GPU カードのみ使用することのみ可能ですので、複数のGPU を使用するにはMATLAB ワーカーを複数起動する必要があります。これらのワーカーは、マシン上に複数のGPUが存在する場合には、それぞれ別々のGPUを選択します。GPUデバイスを明示的に指定する場合は gpuDevice 関数を使用します。 
単純な例ですが、下記のスクリプトでは ii=1 で ID = 1 のGPU が使用され、ii=2 では ID = 2 の GPU を使用して計算を行います。 
parfor ii=1:2 
gpuDevice(ii); 
gX = gpuArray(rand(10)); 
gXX = gX.*gX; 
XX = gather(gXX); 
end 
参考:Running Monte Carlo Simulations on Multiple GPUs 
https://blogs.mathworks.com/loren/2013/06/24/running-monte-carlo-simulations-on-multiple-gpus/

Più risposte (0)

Tag

Non è stata ancora inserito alcun tag.

Community Treasure Hunt

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

Start Hunting!