GPU デバイスの識別と選択
この例では、gpuDevice
を使用して、使用するデバイスの識別と選択を行う方法を説明します。
お使いのコンピューターで利用できる GPU デバイスの数を確認するには、関数gpuDeviceCount
を使用します。
gpuDeviceCount("available")
ans = 2
デバイスが複数ある場合は、1 番目のデバイスが既定になります。関数gpuDeviceTable
でそのプロパティを調べて、使用する目的のデバイスかどうかを判断することができます。
gpuDeviceTable
ans=2×5 table
Index Name ComputeCapability DeviceAvailable DeviceSelected
_____ __________________ _________________ _______________ ______________
1 "NVIDIA RTX A5000" "8.6" true false
2 "Quadro P620" "6.1" true false
最初のデバイスが使用する目的のデバイスである場合は、次に進むことができます。GPU 上で計算を実行するには、gpuArray
対応関数を使用します。詳細については、GPU での MATLAB 関数の実行を参照してください。
MATLAB® で GPU を使用できることを確認するには、canUseGPU
関数を使用します。この関数は、計算に使用できる GPU がある場合は 1
(true
) を返し、ない場合は 0
(false
) を返します。
canUseGPU
ans = logical
1
canUseGPU
が 0
(false
) を返す場合などに GPU の設定に関する問題を診断するには、validateGPU
関数を使用します。GPU の検証はオプションです。
validateGPU
# Beginning GPU validation # Performing system validation # CUDA-supported platform .................................................PASSED # CUDA-enabled graphics driver exists .....................................PASSED # Version: 537.70 # CUDA-enabled graphics driver load .......................................PASSED # CUDA environment variables ..............................................PASSED # CUDA device count .......................................................PASSED # Found 2 devices. # GPU libraries load ......................................................PASSED # # Performing device validation for device index 1 # Device exists ...........................................................PASSED # NVIDIA RTX A5000 # Device supported ........................................................PASSED # Device available ........................................................PASSED # Device is in 'Default' compute mode. # Device selectable .......................................................PASSED # Device memory allocation ................................................PASSED # Device kernel launch ....................................................PASSED # # Finished GPU validation with no failures.
他のデバイスを使用するには、そのデバイスのインデックスを指定してgpuDevice
を呼び出します。
gpuDevice(2)
ans = CUDADevice with properties: Name: 'Quadro P620' Index: 2 (of 2) ComputeCapability: '6.1' DriverModel: 'WDDM' TotalMemory: 2147352576 (2.15 GB) AvailableMemory: 1596066816 (1.60 GB) DeviceAvailable: true DeviceSelected: true Show all properties.
あるいは、利用できる GPU デバイスの数を判別し、デバイスのプロパティのいくつかを検査して、MATLAB® デスクトップから使用するデバイスを選択することもできます。[ホーム] タブの [環境] 領域で、[並列]、[GPU 環境の選択] を選択します。
参考
gpuDevice
| gpuDeviceCount
| gpuArray
| gpuDeviceTable
| canUseGPU
| validateGPU