[Mesa-dev] [PATCH 2/2] i965: Avoid generating MOVs for most ir_assignment handling.
Kenneth Graunke
kenneth at whitecape.org
Mon Aug 29 11:45:09 PDT 2011
On 08/28/2011 05:31 PM, Eric Anholt wrote:
> On Sat, 27 Aug 2011 03:23:28 -0700, Kenneth Graunke <kenneth at whitecape.org> wrote:
>> This is a port of vec4_visitor::try_rewrite_rhs_to_dst to fs_visitor.
>>
>> Not only is this technique less invasive and more robust, it also
>> generates better code. Over and above the previous technique, this
>> reduced instruction count in shader-db:
>>
>> With all FS optimizations (register coalescing and such) disabled, this
>> reduced instruction count by 6.23% on average and 36% in the best case.
>>
>> With optimizations left enabled, it still reduced instruction count by
>> 0.28% on average and 1.4% in the best case.
>>
>> In no case did this technique result in more code than the prior method.
>
> I was actually trying to do this, too, before I GPU hung and ran out of
> battery. However, I don't think just a comparison of before this commit
> to after this commit is fair -- you need to compare before the revert to
> after this commit.
Eric and I just talked about this in person. For the record...
The 0.28%/1.4% improvement really is comparing instruction count /prior
to the revert/ with /after the new technique/. So it really is better.
Eric also had a few small changes to future-proof the code.
With those in place, I've pushed this patch.
More information about the mesa-dev
mailing list