public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 0/3] Reduce the time for which 'struct_mutex' is held
@ 2015-08-24 11:58 ankitprasad.r.sharma
  2015-08-24 11:58 ` [PATCH 1/3] drm/i915: Support for pre-populating the object with system pages ankitprasad.r.sharma
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: ankitprasad.r.sharma @ 2015-08-24 11:58 UTC (permalink / raw)
  To: intel-gfx; +Cc: Ankitprasad Sharma, akash.goel

From: Ankitprasad Sharma <ankitprasad.r.sharma@intel.com>

We are trying to reduce the time for which the global 'struct_mutex'
is locked. Execbuffer ioctl is one place where it is generally held
for the longest time. And sometimes because of this occasional 
glitches/flickers are observed in 60 fps playback (due to miss of
V-blank intervals) as page flip calls gets blocked/delayed because the
'struct_mutex' is already locked.

For this, we have exposed two new flags in GEM_CREATE ioctl, to pre-populate
the object with system memory pages and also do an immediate clflush for the
new pages.

The third patch too tries to reduce the 'struct_mutex' lock time by
moving only those objects to CPU domain in put_pages(), that can either
be used in the future or had a CPU mapping.

This series is based on an earlier series of Stolen Memory patches,
extending the GEM_CREATE ioctl further
http://lists.freedesktop.org/archives/intel-gfx/2015-July/072199.html

Ankitprasad Sharma (2):
  drm/i915: Support for pre-populating the object with system pages
  drm/i915: Support for the clflush of pre-populated pages

Chris Wilson (1):
  drm/i915: Only move to the CPU write domain if keeping the GTT pages

 drivers/gpu/drm/i915/i915_dma.c |   2 +-
 drivers/gpu/drm/i915/i915_drv.h |   5 ++
 drivers/gpu/drm/i915/i915_gem.c | 116 ++++++++++++++++++++++++++++++----------
 include/uapi/drm/i915_drm.h     |  12 ++---
 4 files changed, 101 insertions(+), 34 deletions(-)

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 15+ messages in thread
* [PATCH v2 0/3] Reduce the time for which 'struct_mutex' is held
@ 2015-08-27 11:04 ankitprasad.r.sharma
  2015-08-27 11:04 ` [PATCH 1/3] drm/i915: Support for pre-populating the object with system pages ankitprasad.r.sharma
  0 siblings, 1 reply; 15+ messages in thread
From: ankitprasad.r.sharma @ 2015-08-27 11:04 UTC (permalink / raw)
  To: intel-gfx; +Cc: Ankitprasad Sharma, akash.goel

From: Ankitprasad Sharma <ankitprasad.r.sharma@intel.com>

We are trying to reduce the time for which the global 'struct_mutex'
is locked. Execbuffer ioctl is one place where it is generally held
for the longest time. And sometimes because of this occasional 
glitches/flickers are observed in 60 fps playback (due to miss of
V-blank intervals) as page flip calls gets blocked/delayed because the
'struct_mutex' is already locked.

For this, we have exposed two new flags in GEM_CREATE ioctl, to pre-populate
the object with system memory pages and also do an immediate clflush for the
new pages.

The third patch too tries to reduce the 'struct_mutex' lock time by
moving only those objects to CPU domain in put_pages(), that can either
be used in the future or had a CPU mapping.

v2: Addressed comments from Chris/Arun. Fixed warnings in clflush of
pre-populated pages.

This series is based on an earlier series of Stolen Memory patches,
extending the GEM_CREATE ioctl further
http://lists.freedesktop.org/archives/intel-gfx/2015-July/072199.html

Ankitprasad Sharma (2):
  drm/i915: Support for pre-populating the object with system pages
  drm/i915: Support for the clflush of pre-populated pages

Chris Wilson (1):
  drm/i915: Only move to the CPU write domain if keeping the GTT pages

 drivers/gpu/drm/i915/i915_dma.c |   2 +-
 drivers/gpu/drm/i915/i915_drv.h |   5 ++
 drivers/gpu/drm/i915/i915_gem.c | 119 ++++++++++++++++++++++++++++++++--------
 include/uapi/drm/i915_drm.h     |  12 ++--
 4 files changed, 109 insertions(+), 29 deletions(-)

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-08-27 11:22 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-24 11:58 [PATCH 0/3] Reduce the time for which 'struct_mutex' is held ankitprasad.r.sharma
2015-08-24 11:58 ` [PATCH 1/3] drm/i915: Support for pre-populating the object with system pages ankitprasad.r.sharma
2015-08-24 12:35   ` Chris Wilson
2015-08-27  5:48     ` Ankitprasad Sharma
2015-08-27  7:45       ` Chris Wilson
2015-08-25 10:51   ` Siluvery, Arun
2015-08-27  6:34     ` Ankitprasad Sharma
2015-08-27  7:43       ` Chris Wilson
2015-08-24 11:58 ` [PATCH 2/3] drm/i915: Support for the clflush of pre-populated pages ankitprasad.r.sharma
2015-08-24 12:43   ` Chris Wilson
2015-08-24 11:58 ` [PATCH 3/3] drm/i915: Only move to the CPU write domain if keeping the GTT pages ankitprasad.r.sharma
2015-08-24 12:46   ` Chris Wilson
2015-08-26  9:25 ` [PATCH 0/3] Reduce the time for which 'struct_mutex' is held Daniel Vetter
2015-08-27 10:48   ` Ankitprasad Sharma
  -- strict thread matches above, loose matches on Subject: below --
2015-08-27 11:04 [PATCH v2 " ankitprasad.r.sharma
2015-08-27 11:04 ` [PATCH 1/3] drm/i915: Support for pre-populating the object with system pages ankitprasad.r.sharma

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox