共有メモリ
GPGPUに対応したモダンなGPUは、GPUのスレッドブロック(ワークグループ、スレッドグループ)内でのみアクセス可能な共有メモリ(ローカルメモリ、グループ共有メモリ)を有している。この共有メモリは、VRAM上に確保されるグローバルメモリと比べると小容量だが高速であり、アプリケーションコードから操作可能なキャッシュメモリの役割を果たす。CUDA、OpenCL、DirectComputeのようなAPIは、それぞれ名称は異なるものの、このGPU共有メモリを利用する機能を持ち、グローバルメモリから読み出したデータをGPUのスレッドブロック内で共有したり、計算結果を交換したりする用途に活用することで、高速化を図ることができる。