[Mesa-dev] [PATCH 0/3] [RFC] mesa/st: glsl_to_tgsi: improved temp-reg lifetime estimation

Marek Olšák maraeo at gmail.com
Sun Jun 11 14:15:00 UTC 2017


Also, I don't know if people will like that it uses STL. I personally
have no issue with that as long as it doesn't break apps (e.g. the STL
shipped with apps should be the same as the STL shipped with the
distribution).

Marek

On Sun, Jun 11, 2017 at 4:12 PM, Marek Olšák <maraeo at gmail.com> wrote:
> Hi Gert,
>
> Have you measured the CPU overhead of the new code?
>
> Marek
>
> On Sat, Jun 10, 2017 at 1:15 AM, Gert Wollny <gw.fossdev at gmail.com> 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.
>>
>> 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
>>
>> --
>> 2.13.0
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list