Default compute dimensions (runtime)

Nathan Sidwell nathan@acm.org
Wed Feb 3 16:21:00 GMT 2016


On 02/03/16 11:10, Alexander Monakov wrote:
> Hello,
>
> On Wed, 3 Feb 2016, Nathan Sidwell wrote:
>> 1) extend the -fopenacc-dim=X:Y:Z syntax to allow '-' indicating a runtime
>> choice.  (0 also indicates that, but I thought best to have an explicit syntax
>> as well).
>
> Does it work when the user specifies one of the dimensions, so that references
> to it are subject to constant folding and VRP, but leaves some other dimension
> unspecified, and when eventually GOMP_OPENACC_DIM is parsed at runtime, the
> runtime-specified value of the first dimension is different from what the
> compiler saw, invalidating all folding and propagation?

You can only override at runtime those dimensions that you said you'd override 
at runtime when you compiled your program.

> I don't see why you say that because cuDeviceGetAttribute provides
> CU_DEVICE_ATTRIBUTE_WARP_SIZE, CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK,
> CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X (which is not too useful for this case) and
> cuFuncGetAttribute that allows to get a per-function thread limit.  There's a
> patch on gomp-nvptx branch that adds querying some of those to the plugin.

thanks.  There doesn't appear to be one for number of physical CTAs though, right?

nathan



More information about the Gcc-patches mailing list