Это общий подход, который используется в CUDA, OpenCL, и я думаю, что поток ATI.
Идея сетки состоит в том, чтобы обеспечить простое, но гибкое отображение между обрабатываемыми данными и потоками, выполняющими обработку данных. В простой версии модели исполнения GPGPU один поток GPU «выделяется» для каждого выходного элемента в сетке данных 1D, 2D или 3D. Для обработки этого выходного элемента поток будет считывать один (или несколько) элементов из соответствующего местоположения или смежных местоположений в сетке входных данных. Благодаря организации потоков в сетке потокам легче определить, какие элементы входных данных нужно прочитать и где хранить элементы выходных данных.
Это отличается от общей многоядерной модели многопоточности ЦП, где один поток распределяется на ядро ЦП, и каждый поток обрабатывает множество элементов ввода и вывода (например, 1/4 данных в четырехъядерной системе). *