On Wed, Oct 31, 2018 at 11:10 AM Toni Lönnberg <toni.lonnb...@intel.com> wrote:
> When we debug media or 3d+media workloads, we'd like to be able to see > what is > in the aub dumps for those workloads. At the moment the decoder can't > distinguish instructions which share the same opcode between the render > and > video pipe, and thus aubinator outputs garbage on media instructions. > > I was reluctant to make these changes into Mesa in the first place since > the > work is related to media, not 3d, but as aubinator is now located here, > here we > are. > That's fine. It's fine if these changres live in mesa. > As far as I can see, these are the options: > > 1. Put these in Mesa as aubinator now resides here instead of IGT. > a) Put all instruction definitions in the current genxml files, be it > with a > tag or an attribute, both methods have their advantages and > disadvantages. > b) Separate genxml files into common, render and video (and blitter?) > > 2. Fork aubinator tools and related genxml infra to a completely separate > project. > > If I have missed an option, feel free to suggest. > I wasn't suggesting we fork the tools and the XML. I was just wondering whether we wanted to do separate sections or an attribute. I think it should land in mesa either way. --Jason > On Wed, Oct 31, 2018 at 09:20:39AM -0500, 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. > > > > 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.lonnb...@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@lists.freedesktop.org > > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev