On 23/07/24 18:34, Benjamin Segall wrote: > Valentin Schneider <vschneid@xxxxxxxxxx> writes: > >> On 18/07/24 17:25, Benjamin Segall wrote: >>> Valentin Schneider <vschneid@xxxxxxxxxx> writes: >>> >>>> I've tested a 10ms runtime / 100ms period cgroup with an always running >>>> task: upstream gets a "clean" periodic pattern of 10ms runtime every 100ms, >>>> whereas this gets something more like 40ms runtime every 400ms. >>> >>> Hmm, this seems a little odd since TWA_RESUME does a kick_process. >> >> I didn't ponder too much on the workload used here, but the point I wanted >> to bring up is: if you give a cgroup X amount of runtime, it may still >> consume more than that within a single period because execution in >> kernelspace isn't immediately stopped/throttled. >> >> It means the "standard" bandwidth control behaviour becomes a bit more >> bursty. > > Yeah, more bursty behavior when doing cpu-burning syscalls is expected. > With the check on exit to user I wouldn't expect anything worse than the > duration of the syscall though, so it depends on what your test was. > That would also be my expectations. That was rt-app, so the userspace part is mostly floating point operations IIRC. I'll do a bit of tracing to make sure nothing funny is happening in the kernel.