[Mesa-dev] i965: Single program flow for shaders with no control flow.

Eric Anholt eric at anholt.net
Wed May 7 12:37:25 PDT 2014


Matt Turner <mattst88 at gmail.com> writes:

> The docs say that flipping this bit on for shaders that don't do SIMD
> branching (i.e., non-uniform control flow) will save us some power.
>
> An easy first step is turning this on when we don't see control flow.
>
> In the future with more infrastructure in place, we can determine if
> all branching conditions are uniformly constant and turn on SPF.
>
> Hopefully this saves some power and extends battery life, but I'm not
> sure how to accurately quantify this, short of printing i915_energy_uJ
> before and after some workload. Even then I don't have any expectation
> for how much energy the GPU would use for, say a piglit run. Is
> 200 ~ 300 Joules reasonable (over 220 seconds)?

I tried this once myself, and found no power difference (n=17).  I think
when SPF actually helps you is when you have flow control and the SPF
flag set: then the HW gets to do one compare of pcip instead of 8 or 16.

It might still be worth merging as progress toward SPF with control flow.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140507/61f1ad91/attachment.sig>


More information about the mesa-dev mailing list