[Mesa-dev] [PATCH v2 00/15] i965: Rework uniform handling in the back-end
Kenneth Graunke
kenneth at whitecape.org
Thu Apr 14 21:47:53 UTC 2016
On Tuesday, March 22, 2016 3:33:35 PM PDT Jason Ekstrand wrote:
> This is mostly a re-send of a patch series I've had floating around in one
> form or a while for quite some time. It's basically the same except that
> the original version was missing a work-around for Sandy Bridge. For a
> while, I wasn't really pushing to get it merged because I couldn't
> demonstrate any actual performance benifit from pushing arrays. However,
> with the Vulkan API, the concept of push constants is directly exposed to
> the user and we really need to be able to indirect on them. This series
> makes the FS backend 100% ready for indirect push constants; vec4 will
> take a little more work.
>
> It's worth noting that we've been carying these patches around in our
> Vulkan driver for probably 3 or 4 months now and it's working great.
>
> For those that prefer to review on a branch:
>
> https://cgit.freedesktop.org/~jekstrand/mesa/log/?h=review/i965-uniforms
>
> I think Kristian has mostly reviewed these patches. However, he never sent
> any R-Bs to the list. I'd also like Ken or Matt to look at it from a
> design perspective.
>
Sorry, I ran out of time to review these today. Here's what I have:
> Jason Ekstrand (15):
> i965/fs: Add support for doing MOV_INDIRECT on uniforms
> i965/fs: Don't force MASK_DISABLE on INDIRECT_MOV instructions
> i965/fs: Fix regs_read() for MOV_INDIRECT with a non-zero subnr
> i965/fs: Add support for MOV_INDIRECT on pre-Broadwell hardware
> nir: Add another index to load_uniform to specify the range read
The above are
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Use MOV_INDIRECT for all indirect uniform loads
Acked-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Get rid of reladdr
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Stop relying on param_size in assign_constant_locations
Acked-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Get rid of the param_size array
> i965/vec4: Inline get_pull_constant_offset
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/vec4: Use MOV_INDIRECT instead of reladdr for indirect push constants
Acked-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Use UD type for offsets in VARYING_PULL_CONSTANT_LOAD
> i965/vec4: Get rid of the uniform_size array
> i965/fs: Rename demote_pull_constants to lower_constant_loads
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> i965/fs: Push small uniform arrays
Acked-by: Kenneth Graunke <kenneth at whitecape.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160414/33e5d5fc/attachment.sig>
More information about the mesa-dev
mailing list