[Mesa-dev] [PATCH v2 00/13] Engine parameter for instructions

Jason Ekstrand jason at jlekstrand.net
Wed Oct 31 18:19:20 UTC 2018


On Wed, Oct 31, 2018 at 9:34 AM Lionel Landwerlin <
lionel.g.landwerlin at intel.com> wrote:

> On 31/10/2018 14:20, Jason Ekstrand wrote:
>
> Toni,
>
> I'm a bit curious where you're going with this.  I started on a similar
> project a couple of years ago:
>
> https://gitlab.freedesktop.org/jekstrand/mesa/commits/wip/genxml-engines
>
> Mine took a different (not necessarily better) approach of surrounding the
> instructions in an <engine> tag.  I'm not sure if that's any better or
> worse than an attribute.
>
>
> I suggested the attribute because it would avoid duplication of some MI
> instructions.
>

That makes sense.  We could do something like engines="a,b,c,d" if we
wanted to specify more than one but not all.  I guess that makes sense.

--Jason



>
> At the time, I was planning to port over the blitter code to genxml and
> get aubinator decoding blit streams.  I canned the project because there
> are few enough differences in hardware generations for the blitter to be
> worth the re-compilation and I had better things to do.  I've always
> thought it would be good to support other engines for no other reason than
> to make aubinator for blits.  It would also likely be useful to have if we
> wanted to start doing media in mesa for some reason.  What's your
> motivation?  I ask because I can't really have an opinion on the approach
> unless I know where it's headed.
>
> --Jason
>
> On Wed, Oct 31, 2018 at 8:12 AM Toni Lönnberg <toni.lonnberg at intel.com>
> wrote:
>
>> These patches add an engine parameter to the instructions defined in the
>> genxml
>> files so that they can be distinguished when sending them to different
>> engines.
>> By default, an instruction is defined to be used by all engines and is
>> defined
>> for a specific engine by adding the parameter "engine" to the definition.
>> Currently the supported engines are "render", "video" and "blitter".
>>
>> v2:
>>
>> * gen_engine enum removed and replaced with use of
>> drm_i915_gem_engine_class
>>
>> * The current engine being used is now saved in the decoder context and
>> is not
>>   being passed through gen_print_batch().
>>
>> * Split the genxml changes into multiple patches
>>
>> Toni Lönnberg (13):
>>   intel/decoder: tools: gen_engine to drm_i915_gem_engine_class
>>   intel/decoder: Engine parameter for instructions
>>   intel/decoder: tools: Use engine for decoding batch instructions
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen4)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen45)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen5)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen6)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen7)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen75)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen8)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen9)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen10)
>>   intel/genxml: Add engine definition to render engine instructions
>>     (gen11)
>>
>>  src/intel/common/gen_batch_decoder.c     |  25 ++-
>>  src/intel/common/gen_decoder.c           |  18 +-
>>  src/intel/common/gen_decoder.h           |  11 +-
>>  src/intel/genxml/gen10.xml               | 206 +++++++++++-----------
>>  src/intel/genxml/gen11.xml               | 208 +++++++++++------------
>>  src/intel/genxml/gen4.xml                |  36 ++--
>>  src/intel/genxml/gen45.xml               |  38 ++---
>>  src/intel/genxml/gen5.xml                |  44 ++---
>>  src/intel/genxml/gen6.xml                |  94 +++++-----
>>  src/intel/genxml/gen7.xml                | 154 ++++++++---------
>>  src/intel/genxml/gen75.xml               | 184 ++++++++++----------
>>  src/intel/genxml/gen8.xml                | 202 +++++++++++-----------
>>  src/intel/genxml/gen9.xml                | 208 +++++++++++------------
>>  src/intel/tools/aub_read.c               |  22 +--
>>  src/intel/tools/aub_read.h               |  11 +-
>>  src/intel/tools/aubinator.c              |   8 +-
>>  src/intel/tools/aubinator_error_decode.c |  16 ++
>>  17 files changed, 763 insertions(+), 722 deletions(-)
>>
>> --
>> 2.17.1
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>
>
> _______________________________________________
> mesa-dev mailing listmesa-dev at lists.freedesktop.orghttps://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20181031/30383813/attachment-0001.html>


More information about the mesa-dev mailing list