[Mesa-dev] [PATCH] i965/skl: Send a message header when doing constant loads SIMD4x2

Kenneth Graunke kenneth at whitecape.org
Fri Mar 13 15:39:16 PDT 2015


On Friday, March 13, 2015 11:10:24 AM Kristian Høgsberg wrote:
> On Fri, Mar 13, 2015 at 9:29 AM, Neil Roberts <neil at linux.intel.com> wrote:
> > Commit 0ac4c272755c7 made it add a header for the send message when
> > using SIMD4x2 on Skylake because without this it will end up using
> > SIMD8D. However the patch missed the case when a sampler is being used
> > to implement constant loads from a buffer surface in a SIMD4x2 vertex
> > shader.
> >
> > This fixes 29 Piglit tests, mostly related to the ARL instruction in
> > vertex programs.
> 
> The patch looks fine, and
> 
> Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
> 
> but why are we running vec4 VS on SKL?  Is it really vec4 GS?  It may
> be better to enable SIMD8 GS and stop using vec4 on SKL. On one hand
> we can avoid adding these workarounds to vec4, on the other it may be
> nice to be able to run vec4 on SKL (using INTEL_DEBUG=vec4vs).  I
> don't really have a preference.

ARB_vertex_program and fixed function vertex shaders still run in 4x2
mode - you explicitly skipped the scalar VS path when the
gl_shader_program pointer is NULL.  You'd have to add vertex program
support to brw_fs_fp.cpp.

At this point, I don't think that's worth doing - I'm about ready to
send code that converts Mesa IR to NIR, at which point everything can
run in scalar mode.  Of course, we still need to enable NIR by
default...

Fixing the vec4 backend for Skylake seems like a good idea.
-------------- 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: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150313/e95126f5/attachment.sig>


More information about the mesa-dev mailing list