[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <713b4681-3bdb-b25c-9afb-5896ca255309@linux.intel.com>
Date: Thu, 12 Nov 2020 20:12:01 +0800
From: "Li, Aubrey" <aubrey.li@...ux.intel.com>
To: Qais Yousef <qais.yousef@....com>
Cc: mingo@...hat.com, peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
valentin.schneider@....com, tim.c.chen@...ux.intel.com,
linux-kernel@...r.kernel.org, Aubrey Li <aubrey.li@...el.com>,
Jiang Biao <benbjiang@...il.com>
Subject: Re: [RFC PATCH v3] sched/fair: select idle cpu from idle cpumask for
task wakeup
On 2020/11/12 18:57, Qais Yousef wrote:
> On 10/21/20 23:03, Aubrey Li wrote:
>> From: Aubrey Li <aubrey.li@...el.com>
>>
>> Added idle cpumask to track idle cpus in sched domain. When a CPU
>> enters idle, its corresponding bit in the idle cpumask will be set,
>> and when the CPU exits idle, its bit will be cleared.
>>
>> When a task wakes up to select an idle cpu, scanning idle cpumask
>> has low cost than scanning all the cpus in last level cache domain,
>> especially when the system is heavily loaded.
>>
>> v2->v3:
>> - change setting idle cpumask to every idle entry, otherwise schbench
>> has a regression of 99th percentile latency.
>> - change clearing idle cpumask to nohz_balancer_kick(), so updating
>> idle cpumask is ratelimited in the idle exiting path.
>> - set SCHED_IDLE cpu in idle cpumask to allow it as a wakeup target.
>>
>> v1->v2:
>> - idle cpumask is updated in the nohz routines, by initializing idle
>> cpumask with sched_domain_span(sd), nohz=off case remains the original
>> behavior.
>
> Did you intend to put the patch version history in the commit message?
>
> I started looking at this last week but got distracted. I see you already got
> enough reviews, so my 2p is that I faced some compilation issues:
>
> aarch64-linux-gnu-ld: kernel/sched/idle.o: in function `set_next_task_idle':
> /mnt/data/src/linux/kernel/sched/idle.c:405: undefined reference to `update_idle_cpumask'
> aarch64-linux-gnu-ld: kernel/sched/fair.o: in function `nohz_balancer_kick':
> /mnt/data/src/linux/kernel/sched/fair.c:10150: undefined reference to `update_idle_cpumask'
> aarch64-linux-gnu-ld: /mnt/data/src/linux/kernel/sched/fair.c:10148: undefined reference to `update_idle_cpumask'
>
> Because of the missing CONFIG_SCHED_SMT in my .config. I think
> update_idle_cpumask() should be defined unconditionally.
Thanks to point this out timely, :), I'll fix it in the next version.
-Aubrey
Powered by blists - more mailing lists