On pe, 2016-11-18 at 14:00 +0000, Chris Wilson wrote: > On Fri, Nov 18, 2016 at 03:36:47PM +0200, David Weinehall wrote: > > Benchmarking shows that on resume we spend quite a bit of time > > just taking and dropping these references, leaving us two options; > > either rewriting the code not to take these references more than > > once, which would be a rather invasive change since the involved > > functions are used from other places, or to optimise > > intel_runtime_pm_{get,put}(). This patch does the latter. > > Initial benchmarking indicate improvements of a couple > > of milliseconds on resume. > > > > Original patch by Chris, with slight fixes by me. > > > > v2: Fix missing return value (Patchwork) > > Remove extra atomic_dec() (Chris) > > > > Signed-off-by: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx> > > CC: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Cc: Imre Deak <imre.deak@xxxxxxxxxxxxxxx> > > I'm happy with this. Not amused that it apparently saves quite a bit > of > overhead with frequent pm_runtime calls. > > Imre? I think the overhead is because the RPM core takes a lock and checks if the device needs to be woken up even if the runtime_usage count is 0. But for us the device is awake whenever wakeref_count > 0, so yes we can optimize things. > -Chris > _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx