Hello.
On Sat, Jan 25, 2025 at 01:25:12PM +0800, Abel Wu <wuyun.abel@xxxxxxxxxxxxx> wrote:
The per-task and per-cpu accounting have already been tracked by
t->sched_info.run_delay and rq->rq_sched_info.run_delay respectively.
Extends this to also include cgroups.
The PSI indicator, "some" of cpu.pressure, loses the insight into how
severely that cgroup is stalled. Say 100 tasks or just 1 task that gets
stalled at a certain point will show no difference in "some" pressure.
IOW "some" is a flat value that not weighted by the severity (e.g. # of
tasks).
IIUC below are three examples of when "some" tasks are waiting for CPU:
a)
t1 |----|
t2 |xx--|
b)
t1 |----|
t2 |x---|
t3 |-x--|
c)
t1 |----|
t2 |xx--|
t3 |xx--|
(- means runnable on CPU, x means runnable waiting on RQ)
Which pair from a), b), c) is indistinguishable via PSI? (Or can you
please add your illustrative example?)