[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAM7-yPToeHY_8vjE7KSa+jmsfmCknUAL2WP8m-S3EpD52-wGCA@mail.gmail.com>
Date: Thu, 16 May 2024 06:29:51 +0100
From: Yun Levi <ppbuk5246@...il.com>
To: Frederic Weisbecker <frederic@...nel.org>
Cc: Joel Fernandes <joel@...lfernandes.org>, Vineeth Pillai <vineeth@...byteword.org>,
Vincent Guittot <vincent.guittot@...aro.org>, Peter Zijlstra <peterz@...radead.org>,
Dietmar Eggemann <dietmar.eggemann@....com>, anna-maria@...utronix.de, mingo@...nel.org,
tglx@...utronix.de, Markus.Elfring@....de, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4] time/tick-sched: idle load balancing when nohz_full
cpu becomes idle.
HI. Frederic!
Thanks for your reply.
> 1) Is Idle load balancing actually relevant for nohz_full? HK_TYPE_MISC already
> prevent those CPUs from becoming idle load balancer. They can still be
> targets for load balancing but nohz_full CPUs are supposed to run only one
> task.
I'm not sure nohz_full cpu is really relevant with Idle load balancing.
However, I couldn't find any reason it shouldn't participate Idle load
balancing.
And about HK_TYPE_MISC, this is half true when it sets with
"nohz_full=" options,
if nohz_full cpu is set via "isolcpus=nohz," it's still in HK_TYPE_MISC mask
so find_ilb() doesn't prevent entering idle load balance.
> 2) This is related to previous point: HK_TYPE_SCHED is never activated. It would
> prevent the CPU from even beeing part of idle load balancing. Should we
> remove it or plug it?
IMHO, If we want to prevent nohz_full cpu entering, I should set with
HK_TYPE_TICK | HK_TYPE_SCHED together.
Because, find_new_ilb()'s comment say
" HK_TYPE_MISC CPUs are used for this task, because HK_TYPE_SCHED is
not set anywhere yet."
or integrate with HK_TYPE_TICK....? removing HK_TYPE_SCHED in the hk list...
It depends on ilb relevant for nohz_full...
If it is, Idle load balance could be controlled with HK_TYPE_SCHED.
If it doesn't ,IMHO, It seems better to remove HK_TYPE_SCHED and check
with HK_TYPE_SCHED.
> 4) Why is nohz_balance_exit_idle() called from the tick and not from the idle
> exit path? Is it to avoid overhead?
> I'm adding some scheduler people in Cc who might help answer some of those
> questions.
..
Thanks :)
Powered by blists - more mailing lists