On Mon, Aug 07, 2017 at 07:27:30PM +0300, Alexey Budankov wrote: > On 07.08.2017 18:55, Peter Zijlstra wrote:
> > In the extreme, if you construct your program such that you'll never get > > hit by the tick (this used to be a popular measure to hide yourself from > > time accounting) > > Well, some weird thing for me. Never run longer than one tick? > I could imaging some I/O bound code that would fast serve some short > messages, all the other time waiting for incoming requests. > Not sure if CPU events monitoring is helpful in this case. Like I said, in extreme. Typically its less weird. Another example is scheduling a very constrained counter/group along with a bunch of simple events such that the group will only succeed to schedule when its the first. In this case it will get only 1/nr_events time with RR, as opposed to the other/simple events that will get nr_counters/nr_events time. By making it runtime based, the constrained thing will more often be head of list and acquire equal total runtime to the other events.