Quoting Tvrtko Ursulin (2018-05-17 14:13:00) > > On 17/05/2018 08:40, Chris Wilson wrote: > > Back in commit 27af5eea54d1 ("drm/i915: Move execlists irq handler to a > > bottom half"), we came to the conclusion that running our CSB processing > > and ELSP submission from inside the irq handler was a bad idea. A really > > bad idea as we could impose nearly 1s latency on other users of the > > system, on average! Deferring our work to a tasklet allowed us to do the > > processing with irqs enabled, reducing the impact to an average of about > > 50us. > > > > We have since eradicated the use of forcewaked mmio from inside the CSB > > processing and ELSP submission, bringing the impact down to around 5us > > (on Kabylake); an order of magnitude better than our measurements 2 > > years ago on Broadwell and only about 2x worse on average than the > > gem_syslatency on an unladen system. > > > > Comparing the impact on the maximum latency observed over a 120s interval, > > repeated several times (using gem_syslatency, similar to RT's cyclictest) > > while the system is fully laden with i915 nops, we see that direct > > submission definitely worsens the response but not to the same outlandish > > degree as before. > > > > x Unladen baseline > > + Using tasklet > > * Direct submission > > > > +------------------------------------------------------------------------+ > > |xx x ++ +++ + * * * ** *** * *| > > ||A| |__AM__| |_____A_M___| | > > +------------------------------------------------------------------------+ > > What are these headers? This one and below, I cannot decipher them at all. > > > N Min Max Median Avg Stddev > > x 10 5 18 10 9.3 3.6530049 > > + 10 72 120 108 102.9 15.758243 > > * 10 255 348 316 305.7 28.74814 > > In micro-seconds? so tasklet is 108us median? Direct submission 316us > median? Perspective, ivb ringbuf: x syslatency-ringbuf-mean.txt + syslatency-ringbuf-max.txt +------------------------------------------------------------------------+ | xx + | | xx + | | xx + | | xx ++ | | xxxx + + + ++ + ++ | |x xxxx + + + ++ + ++ ++++ ++++ +| | |AM |__________A__M_______| | +------------------------------------------------------------------------+ N Min Max Median Avg Stddev x 30 5.395 17.893 13.626 13.135367 2.2143809 + 30 33 169 143 135.86667 25.609445 Using execlists+tasklet is on par with irqoff (i.e. max) latency of ringbuf. (There should be very little irq disabling for ringbuf.) Normal average latency of execlists+direct_submission is still better than ivb, but that is almost entirely generational differences. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx