[Intel-gfx] [PATCH v2 0/5] Command parser batch buffer copy

bradley.d.volkin at intel.com bradley.d.volkin at intel.com
Wed Jul 9 00:26:35 CEST 2014


From: Brad Volkin <bradley.d.volkin at intel.com>

This is v2 of the series I sent here:
http://lists.freedesktop.org/archives/intel-gfx/2014-June/047609.html

I believe that I've addressed all of the feedback except
* I didn't move the allocation of the shadow batch buffer into parse_cmds(). It
  didn't seem like it added much value and would maybe complicate the error
  handling in do_execbuffer().
* I kept the part about attaching the shadow batch to the request, though in
  perhaps a less invasive way. My concern here is with the scheduler possibly
  reordering requests, I don't know if we'd still be able to implement the busy
  tracking in the pool as suggested.

The commit message for patch 4 still applies: we aren't ready for that change
until the secure dispatch regression is resolved, but it's needed for testing.

I've added patch 5 to use batch_len instead of object size, as an optimization.
My testing didn't show any perf difference, but I don't have any libva
benchmarks to run, and that's where it sounded like the issue would be. I just
tacked the patch onto the end of the series rather than squashing it in so we
can easily take it or leave it as desired.

Brad Volkin (5):
  drm/i915: Implement a framework for batch buffer pools
  drm/i915: Use batch pools with the command parser
  drm/i915: Add a batch pool debugfs file
  drm/i915: Dispatch the shadow batch buffer
  drm/i915: Use batch length instead of object size in command parser

 Documentation/DocBook/drm.tmpl             |   5 ++
 drivers/gpu/drm/i915/Makefile              |   1 +
 drivers/gpu/drm/i915/i915_cmd_parser.c     |  88 +++++++++++++++----
 drivers/gpu/drm/i915/i915_debugfs.c        |  41 +++++++++
 drivers/gpu/drm/i915/i915_dma.c            |   1 +
 drivers/gpu/drm/i915/i915_drv.h            |  26 ++++++
 drivers/gpu/drm/i915/i915_gem.c            |  10 +++
 drivers/gpu/drm/i915/i915_gem_batch_pool.c | 133 +++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |  39 ++++++++-
 9 files changed, 325 insertions(+), 19 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_gem_batch_pool.c

-- 
1.8.3.2




More information about the Intel-gfx mailing list