CUDA(Compute Unified Device Architecture:クーダ)とは、NVIDIAが開発・提供している、GPU向けの汎用並列コンピューティングプラットフォーム(並列コンピューティングアーキテクチャ)およびプログラミングモデルである[4][5][6]。専用のC/C++コンパイラ (nvcc) やライブラリ (API) などが提供されている。なおNVIDIA製GPUにおいては、OpenCL/DirectComputeなどの類似APIコールは、すべて共通のGPGPUプラットフォームであるCUDAを経由することになる[7]。 CUDAの処理の流れ 1. メインメモリ(ホストメモリ)からデータをGPU用メモリ(デバイスメモリ)にコピーする。 2. CPUがGPUに対して処理を指示する。 3. GPUが必要なデータを取り込み各コアで並列実行する。 4. 結果をGPU用メモリか