[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <708a2726-628c-196b-1fc0-43067e1e740f@linux.ibm.com>
Date: Tue, 9 Jul 2019 11:08:17 +0530
From: Parth Shah <parth@...ux.ibm.com>
To: Subhra Mazumdar <subhra.mazumdar@...cle.com>,
linux-kernel@...r.kernel.org
Cc: peterz@...radead.org, mingo@...hat.com, vincent.guittot@...aro.org
Subject: Re: [RFC 0/2] Optimize the idle CPU search
On 7/9/19 5:38 AM, Subhra Mazumdar wrote:
>
> On 7/8/19 10:24 AM, Parth Shah wrote:
>> When searching for an idle_sibling, scheduler first iterates to search for
>> an idle core and then for an idle CPU. By maintaining the idle CPU mask
>> while iterating through idle cores, we can mark non-idle CPUs for which
>> idle CPU search would not have to iterate through again. This is especially
>> true in a moderately load system
>>
>> Optimize idle CPUs search by marking already found non idle CPUs during
>> idle core search. This reduces iteration count when searching for idle
>> CPUs, resulting in lower iteration count.
>>
> I believe this can co-exist with latency-nice? We can derive the 'nr' in
> select_idle_cpu from latency-nice and use the new mask to iterate.
>
I agree, can be done with latency-nice.
Maybe something like below?
smt = nr_cpus / nr_cores
nr = smt + (p->latency_nice * (total_cpus-smt) / max_latency_nice)
This limits lower bounds to 1 core and goes through all the cores if
latency_nice is maximum for a task.
Thanks
Parth
Powered by blists - more mailing lists