# Portal:OpenGL Shading Language/Compute Shader

From OpenGL.org

The **Compute Shader** is the shader stage for doing arbitrary computations. It uses an execution model based on groups of shader invocations which can share data. The invocations within this "work groups" can inter-communicate reasonably freely, with relatively minimal overhead. The number of invocations within a work group is limited, but the shader can select any number within those limits.

Compute shaders are not invoked by rendering operations. They are instead started by calling a special dispatch function. Each execution of a compute shader will run the given number of work groups.

While compute shaders could in theory take the place of rendering, this is not a practical use for them.