[Mesa-dev] [PATCH] i965/fs: Implement SIMD16 dual source blending.

Kenneth Graunke kenneth at whitecape.org
Fri Mar 6 02:13:14 PST 2015


On Thursday, March 05, 2015 09:39:58 PM Jason Ekstrand wrote:
> This looks fine to me.  I just kicked off a build on our test farm and,
> assuming that looks good (I'll send another e-mail in the morning if it
> does),
> 
> Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
> 
> I ran shader-db on the change and I was kind of surprised to see that it
> doesn't really do anything.
> 
> GAINED: shaders/dolphin/smg.1.shader_test FS SIMD16
> 
> total instructions in shared programs: 5769629 -> 5769629 (0.00%)
> instructions in affected programs:     0 -> 0
> helped:                                0
> HURT:                                  0
> GAINED:                                1
> LOST:                                  0
> 
> Perhaps shader-db doesn't account for some other GL state required for
> dual-source because I doubt only one shader uses it.  Ken?
> 
> --Jason

That would be dolphin/smg.1.shader_test - the one lonely shader that
uses layout qualifiers to specify the dual source color output index:

layout(location = 0, index = 1) out vec4 ocol1;

Other applications (such as Unigine) most likely call
glBindFragDataLocationIndexed to assign the location and index.

Unfortunately, shader-db doesn't capture this, as it's tied to API
calls, and not part of the shader itself.  Eric's new shader-db-2
project that uses apitrace would catch this (but at a large cost).

We could probably capture this somehow - add some kind of annotations
to the file with the locations/indexes of each shader input/output,
then make the API calls after compiling the shader...relink to make
them take effect, which would also cause a new precompile, then replace
the original results...seems like a pain, but probably doable...
-------------- 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/20150306/9ab621f3/attachment-0001.sig>


More information about the mesa-dev mailing list