On Tue, May 09, 2017 at 04:16:41PM +0100, Tvrtko Ursulin wrote: > > On 09/05/2017 15:26, Chris Wilson wrote: > >On Tue, May 09, 2017 at 03:09:33PM +0100, Tvrtko Ursulin wrote: > >>From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> > >> > >>By popular customer demand here is the prototype for cheap engine utilization > >>tracking. > > > >customer and debugfs? > > Well I did write in one of the following paragraphs on this topic. > Perhaps I should have put it in procfs. :) Sysfs API looks > restrictive or perhaps I missed a way to get low level (fops) access > to it. > > >>It uses static branches so in the default off case it really should be cheap. > > > >Not as cheap (for the off case) as simply sampling RING_HEAD/RING_TAIL > > Off case are three no-op instructions in three places in the irq > tasklet. And a little bit of object size growth, if you worry about > that aspect? It's just how the snowball begins. > >which looks to be the same level of detail. I wrapped all this up in a > >perf interface once up a time... > > How does that work? Via periodic sampling? Accuracy sounds like it > would be proportionate to the sampling frequency, no? Right, and the sampling frequency is under user control (via perf) with a default of around 1000, gives a small systematic error when dealing with % I included power, interrupts, rc6, frequency (and the statistics but I never used those and dropped them once oa landed), as well as utilisation, just for the convenience of having sane interface :) -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx