Вычислительный шейдер
Программа для GPU вне графического конвейера, которая считает над произвольными буферами сеткой потоков, — видеокарта в роли универсального калькулятора.
В отличие от вершинных и фрагментных шейдеров, вычислительный шейдер не привязан к рисованию треугольников. Его запускают вызовом dispatch в виде сетки рабочих групп; потоки внутри группы делят быструю локальную память и могут синхронизироваться друг с другом. Программа свободно читает и пишет буферы и изображения, загружая тысячи ядер GPU всем, что поддаётся распараллеливанию.
Появился в DirectX 11 (2009) и OpenGL 4.3 (2012), занимает центральное место в Vulkan и Metal. В игровых движках на нём строят системы частиц, физику, отсечение источников света (см. Forward+), постобработку и глобальное освещение — то, что раньше приходилось втискивать в проходы рендеринга или возвращать на CPU. Близкий родственник GPGPU-интерфейсов вроде CUDA и OpenCL.