Re: Re: [PATCH 01/15] sched/fair: Add avg_vruntime

From: Abel Wu
Date: Wed Oct 11 2023 - 04:31:07 EST


On 10/11/23 3:30 PM, Peter Zijlstra Wrote:
On Wed, Oct 11, 2023 at 12:15:28PM +0800, Abel Wu wrote:
On 5/31/23 7:58 PM, Peter Zijlstra wrote:
+/*
+ * Compute virtual time from the per-task service numbers:
+ *
+ * Fair schedulers conserve lag:
+ *
+ * \Sum lag_i = 0
+ *
+ * Where lag_i is given by:
+ *
+ * lag_i = S - s_i = w_i * (V - v_i)

Since the ideal service time S is task-specific, should this be:

lag_i = S_i - s_i = w_i * (V - v_i)

It is not, S is the same for all tasks. Remember, the base form is a
differential equation and all tasks progress at the same time at dt/w_i
while S progresses at dt/W.

IIUC it's V progresses at dt/W and is same for all tasks, not S which is
measured in real time (V*w_i).