All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/13] Forcewake binary search & code shrink
@ 2016-09-29 15:35 Tvrtko Ursulin
  2016-09-29 15:35 ` [PATCH 01/13] drm/i915: Remove redundant hsw_write* mmio functions Tvrtko Ursulin
                   ` (16 more replies)
  0 siblings, 17 replies; 34+ messages in thread
From: Tvrtko Ursulin @ 2016-09-29 15:35 UTC (permalink / raw)
  To: Intel-gfx

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

A bunch of cleaned up patches from one of my old branches. Just an idea I had
been toying about and probably more a RFC at this point. But it amazingly
passed trybot on (almost) the first try so I got tempted to post it.

Basically main motivation was to replace linear search comparison ladders in
all mmio accessors with something smarter - a binary search in this case.

Main enabler is moving the comparison ladders from the code into the data
tables. Then gradually, patch by patch, I was able to reduce the code and
end up with a total saving of approximately 14KiB for the series.

That is kind of nice, but whether the churn is worth it I leave open for
dicussion. It is slightly less code so perhaps more maintainable. Although
tastes will probably differ.

And I haven't been able to do any benchmarking to see if any performance
differece is at all detectable.

Tvrtko Ursulin (13):
  drm/i915: Remove redundant hsw_write* mmio functions
  drm/i915: Keep track of active forcewake domains in a bitmask
  drm/i915: Do not inline forcewake taking in mmio accessors
  drm/i915: Data driven register to forcewake domains lookup
  drm/i915: Sort forcewake mapping tables
  drm/i915: Use binary search when looking up forcewake domains
  drm/i915: Eliminate Gen9 special case
  drm/i915: Store the active forcewake range table pointer
  drm/i915: Remove identical macros
  drm/i915: Remove identical mmio read functions
  drm/i915: Remove identical write mmmio functions
  drm/i915: Sort the shadow register table
  drm/i915: Use binary search when looking for shadowed registers

 drivers/gpu/drm/i915/i915_drv.h     |  13 +
 drivers/gpu/drm/i915/intel_uncore.c | 525 ++++++++++++++++--------------------
 2 files changed, 247 insertions(+), 291 deletions(-)

-- 
2.7.4

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

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

end of thread, other threads:[~2016-09-30 11:22 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-29 15:35 [PATCH 00/13] Forcewake binary search & code shrink Tvrtko Ursulin
2016-09-29 15:35 ` [PATCH 01/13] drm/i915: Remove redundant hsw_write* mmio functions Tvrtko Ursulin
2016-09-29 15:35 ` [PATCH 02/13] drm/i915: Keep track of active forcewake domains in a bitmask Tvrtko Ursulin
2016-09-29 15:35 ` [PATCH 03/13] drm/i915: Do not inline forcewake taking in mmio accessors Tvrtko Ursulin
2016-09-29 15:35 ` [PATCH 04/13] drm/i915: Data driven register to forcewake domains lookup Tvrtko Ursulin
2016-09-29 15:35 ` [PATCH 05/13] drm/i915: Sort forcewake mapping tables Tvrtko Ursulin
2016-09-29 16:13   ` Chris Wilson
2016-09-29 15:35 ` [PATCH 06/13] drm/i915: Use binary search when looking up forcewake domains Tvrtko Ursulin
2016-09-29 16:16   ` Chris Wilson
2016-09-29 20:41     ` [PATCH] lib: Typesafe generator macro for bsearch Chris Wilson
2016-09-30 11:08     ` [PATCH 06/13] drm/i915: Use binary search when looking up forcewake domains Tvrtko Ursulin
2016-09-30 11:22       ` Chris Wilson
2016-09-29 15:35 ` [PATCH 07/13] drm/i915: Eliminate Gen9 special case Tvrtko Ursulin
2016-09-29 16:18   ` Chris Wilson
2016-09-29 15:35 ` [PATCH 08/13] drm/i915: Store the active forcewake range table pointer Tvrtko Ursulin
2016-09-29 16:21   ` Chris Wilson
2016-09-29 15:35 ` [PATCH 09/13] drm/i915: Remove identical macros Tvrtko Ursulin
2016-09-30  7:29   ` Joonas Lahtinen
2016-09-29 15:35 ` [PATCH 10/13] drm/i915: Remove identical mmio read functions Tvrtko Ursulin
2016-09-30  7:32   ` Joonas Lahtinen
2016-09-29 15:35 ` [PATCH 11/13] drm/i915: Remove identical write mmmio functions Tvrtko Ursulin
2016-09-30  8:11   ` Joonas Lahtinen
2016-09-29 15:35 ` [PATCH 12/13] drm/i915: Sort the shadow register table Tvrtko Ursulin
2016-09-29 16:23   ` Chris Wilson
2016-09-30  8:09   ` Joonas Lahtinen
2016-09-30  9:06     ` Tvrtko Ursulin
2016-09-30 11:13       ` Joonas Lahtinen
2016-09-29 15:35 ` [PATCH 13/13] drm/i915: Use binary search when looking for shadowed registers Tvrtko Ursulin
2016-09-30  7:54   ` Joonas Lahtinen
2016-09-30 10:01     ` Tvrtko Ursulin
2016-09-29 15:58 ` [PATCH 00/13] Forcewake binary search & code shrink Jani Nikula
2016-09-29 16:20 ` ✗ Fi.CI.BAT: warning for " Patchwork
2016-09-29 16:24 ` [PATCH 00/13] " Chris Wilson
2016-09-29 21:01 ` ✗ Fi.CI.BAT: failure for Forcewake binary search & code shrink (rev2) Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.