[Bug 35257] r300_fragprog_emit.c::emit_alu(): Too many ALU instructions
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Mon Mar 14 17:28:24 PDT 2011
https://bugs.freedesktop.org/show_bug.cgi?id=35257
--- Comment #7 from Tom Stellard <tstellar at gmail.com> 2011-03-14 17:28:24 PDT ---
(In reply to comment #5)
> (In reply to comment #4)
> > Like Marek said, this isn't a bug it is a hardware limitation. The only way
> > this could work is with changes to Gnome Shell, so you should contact the Gnome
> > Shell developers, although they might tell your hardware is unsupported.
>
> Since we know there's a lot of work still to be done in the compiler's higher
> level optimization passes, I always feel like this is a bit of a cop out
> answer. The TGSI input is 125 instructions, and it looks like a nightmare of
> lowered if-statements. There are way more CMP/SEQ/MUL sequences than any
> program should generate. Unsurprisingly, the driver chokes on it. I'm sure
> the i915 driver, which has limitations similar to r300, would choke even worse.
>
> Comparing the GLSL to the generated TGSI might reveal some high-level
> optimization opportunities that we're missing. It may also help us give some
> suggestions to the gnome-shell folks to make the shader more friendly to older
> hardware. There are, after all, a lot of i915s and r300s out there.
>
> Just for giggles, could we get the output of MESA_GLSL=dump too? Use the same
> procedure as for RADEON_DEBUG=fp.
We were able to give some suggestions to the gnome shell developers to get the
shader to fit. The optimization that is missing is pre-computing of equivalent
expressions (not sure what the technical term is). In this shader there was a
four clause conditional that was being used in two different IF statements.
I've attached the before and after versions of the shader if you're interested
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the dri-devel
mailing list