[Mesa-dev] [RFC 1/3] tgsi: Add WORK_DIM System Value

Ilia Mirkin imirkin at alum.mit.edu
Wed Apr 27 14:49:02 UTC 2016


Please add this semantic to src/gallium/docs and explain what it
means. (I'm not even sure what this is, and the easily-found opencl
docs helpfully indicate that get_work_dim returns the work_dim...)
This wasn't done for some of the other compute-specific semantics.

Is this the equivalent of gl_LocalGroupSizeARB from
GL_ARB_compute_variable_group_size ? [which is basically the same as
gl_WorkGroupSize, but allowed to be specified at dispatch time]


On Wed, Apr 27, 2016 at 10:43 AM, Hans de Goede <hdegoede at redhat.com> wrote:
> Add a new WORK_DIM SV type, this is will return the grid dimensions
> (1-4) for compute (opencl) kernels.
>
> This is necessary to implement the opencl get_work_dim() function.
>
> Signed-off-by: Hans de Goede <hdegoede at redhat.com>
> ---
>  src/gallium/auxiliary/tgsi/tgsi_strings.c  | 1 +
>  src/gallium/include/pipe/p_shader_tokens.h | 1 +
>  2 files changed, 2 insertions(+)
>
> diff --git a/src/gallium/auxiliary/tgsi/tgsi_strings.c b/src/gallium/auxiliary/tgsi/tgsi_strings.c
> index 894d475..f65d7b4 100644
> --- a/src/gallium/auxiliary/tgsi/tgsi_strings.c
> +++ b/src/gallium/auxiliary/tgsi/tgsi_strings.c
> @@ -100,6 +100,7 @@ const char *tgsi_semantic_names[TGSI_SEMANTIC_COUNT] =
>     "HELPER_INVOCATION",
>     "BASEINSTANCE",
>     "DRAWID",
> +   "WORK_DIM",
>  };
>
>  const char *tgsi_texture_names[TGSI_TEXTURE_COUNT] =
> diff --git a/src/gallium/include/pipe/p_shader_tokens.h b/src/gallium/include/pipe/p_shader_tokens.h
> index 514b339..d8ded50 100644
> --- a/src/gallium/include/pipe/p_shader_tokens.h
> +++ b/src/gallium/include/pipe/p_shader_tokens.h
> @@ -200,6 +200,7 @@ enum tgsi_semantic {
>     TGSI_SEMANTIC_HELPER_INVOCATION,  /**< current invocation is helper */
>     TGSI_SEMANTIC_BASEINSTANCE,
>     TGSI_SEMANTIC_DRAWID,
> +   TGSI_SEMANTIC_WORK_DIM,    /**< opencl get_work_dim value */
>     TGSI_SEMANTIC_COUNT,       /**< number of semantic values */
>  };
>
> --
> 2.7.4
>


More information about the mesa-dev mailing list