[Mesa-dev] [PATCH 0/3] [RFC] mesa/st: glsl_to_tgsi: improved temp-reg lifetime estimation
Nicolai Hähnle
nhaehnle at gmail.com
Mon Jun 12 10:28:07 UTC 2017
On 10.06.2017 01:15, Gert Wollny wrote:
> Dear all,
>
> as I wrote before, I was looking into the temporary register renaming.
>
> This series of patches implements a new approach that achieves a tigher
> estimation of the life time of the temporaries, and as a result the Piano
> and Voloplosion benchmarks implemented in gputest [1] now work. Before
> they failed with "r600_pipe_shader_create - translation from TGSI failed!"
>
> Piglit shows 7 fixes and 6 regressions compared to git 8fac894f, but they don't
> seem to be related to shaders. I've also tested other programs like the unignie-*
> benchmarks and they didn't show regressions.
>
> I think that the patch will need a few more iterations to remove code duplication
> and generally adhere to the mesa style, but I think it is atthe point where I could
> need a bit of feedback to get it into shape to be acceptable, and I'd also like to
> mention that since I'm new to mesa this I have no commit rights.
Plenty of style issues aside, can you explain where and why you get
tighter lifetimes?
Cheers,
Nicolai
>
> many thanks,
> Gert
>
> [1] http://www.geeks3d.com/gputest/
>
> Gert Wollny (3):
> mesa/st: glsl_to_tgsi move some helper classes to extra files
> mesa/st: glsl_to_tgsi Implement a new lifetime tracker for temporaries
> mesa/st: glsl_to_tgsi: tie in the new register renaming approach
>
> configure.ac | 1 +
> src/mesa/Makefile.am | 4 +-
> src/mesa/Makefile.sources | 4 +
> src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 302 +-------
> src/mesa/state_tracker/st_glsl_to_tgsi_private.cpp | 241 +++++++
> src/mesa/state_tracker/st_glsl_to_tgsi_private.h | 135 ++++
> .../state_tracker/st_glsl_to_tgsi_temprename.cpp | 551 ++++++++++++++
> .../state_tracker/st_glsl_to_tgsi_temprename.h | 114 +++
> src/mesa/state_tracker/tests/Makefile.am | 40 ++
> src/mesa/state_tracker/tests/st-renumerate-test | 210 ++++++
> .../tests/test_glsl_to_tgsi_lifetime.cpp | 789 +++++++++++++++++++++
> 11 files changed, 2104 insertions(+), 287 deletions(-)
> create mode 100644 src/mesa/state_tracker/st_glsl_to_tgsi_private.cpp
> create mode 100644 src/mesa/state_tracker/st_glsl_to_tgsi_private.h
> create mode 100644 src/mesa/state_tracker/st_glsl_to_tgsi_temprename.cpp
> create mode 100644 src/mesa/state_tracker/st_glsl_to_tgsi_temprename.h
> create mode 100644 src/mesa/state_tracker/tests/Makefile.am
> create mode 100755 src/mesa/state_tracker/tests/st-renumerate-test
> create mode 100644 src/mesa/state_tracker/tests/test_glsl_to_tgsi_lifetime.cpp
>
--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
More information about the mesa-dev
mailing list