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/