Re: [PATCH 2/4] sched_ext: Get rid of the scx_selcpu_topo_numa logic

From: Andrea Righi
Date: Wed Dec 11 2024 - 07:22:18 EST


On Wed, Dec 11, 2024 at 05:05:35PM +0900, Changwoo Min wrote:
> Hello Andrea,
>
> On 24. 12. 9. 19:40, Andrea Righi wrote:
> > /*
> > @@ -3519,9 +3476,8 @@ static void update_selcpu_topology(void)
> > * 4. Pick a CPU within the same NUMA node, if enabled:
> > * - choose a CPU from the same NUMA node to reduce memory access latency.
> > *
> > - * Step 3 and 4 are performed only if the system has, respectively, multiple
> > - * LLC domains / multiple NUMA nodes (see scx_selcpu_topo_llc and
> > - * scx_selcpu_topo_numa).
> > + * Step 3 is performed only if the system has multiple LLC domains that are not
> > + * perfectly overlapping with the NUMA domains (see scx_selcpu_topo_llc).
> > *
> > * NOTE: tasks that can only run on 1 CPU are excluded by this logic, because
> > * we never call ops.select_cpu() for them, see select_task_rq().
> > @@ -3530,7 +3486,6 @@ static s32 scx_select_cpu_dfl(struct task_struct *p, s32 prev_cpu,
> > u64 wake_flags, bool *found)
>
>
> Adding Step 5 to the comment describing how it works if there is no idle CPU
> within a NUMA node would be nice. For example,
>
> 5. Pick any idle CPU usable by the task.

Good idea, will add that, thanks!

-Andrea