From: Andrea Righi <andrea.righi@canonical.com>
To: Joel Fernandes <joel@joelfernandes.org>
Cc: paulmck@kernel.org, Joel Fernandes <joelaf@google.com>,
rcu@vger.kernel.org,
"Cc: Frederic Weisbecker" <fweisbec@gmail.com>
Subject: Re: Observation on NOHZ_FULL
Date: Tue, 30 Jan 2024 07:58:18 +0100 [thread overview]
Message-ID: <ZbieCjYk8cIgZS8L@gpd> (raw)
In-Reply-To: <0e15e91e-da47-45dd-b7de-7f89b7b6002b@joelfernandes.org>
Hi Joel and Paul,
comments below.
On Mon, Jan 29, 2024 at 05:16:38PM -0500, Joel Fernandes wrote:
> Hi Paul,
>
> On 1/29/2024 3:41 PM, Paul E. McKenney wrote:
> > On Mon, Jan 29, 2024 at 05:47:39PM +0000, Joel Fernandes wrote:
> >> Hi Guys,
> >> Something caught my eye in [1] which a colleague pointed me to
> >> - CONFIG_HZ=1000 : 14866.05 bogo ops/s
> >> - CONFIG_HZ=1000+nohz_full : 18505.52 bogo ops/s
> >>
> >> The test in concern is:
> >> stress-ng --matrix $(getconf _NPROCESSORS_ONLN) --timeout 5m --metrics-brief
> >>
> >> which is a CPU intensive test.
> >>
> >> Any thoughts on what else can attribute a 30% performance increase
> >> versus non-nohz_full ? (Confession: No idea if the baseline is
> >> nohz_idle or no nohz at all). If it is 30%, I may want to evaluate
> >> nohz_full on some of our limited-CPU devices :)
> >
> > The usual questions. ;-)
> >
> > Is this repeatable? Is it under the same conditions of temperature,
> > load, and so on? Was it running on bare metal or on a guest OS? If on a
> > guest OS, what was the load from other guest OSes on the same hypervisor
> > or on the hypervisor itself?
That was the result of a quick test, so I expect it has some fuzzyness
in there.
It's an average of 10 runs, it was bare metal (my laptop, 8 cores 11th
Gen Intel(R) Core(TM) i7-1195G7 @ 2.90GHz), *but* I wanted to run the
test with the default Ubuntu settings, that means having "power mode:
balanced" enabled. I don't know exactly what it's doing (I'll check how
it works in details), I think it's using intel p-states IIRC.
Also, the system was not completely isolated (my email client was
running) but the system was mostly idle in general.
I was already planning to repeat the tests in a more "isolated"
environment and add details to the bug tracker.
> >
> > The bug report ad "CONFIG_HZ=250 : 17415.60 bogo ops/s", which makes
> > me wonder if someone enabled some heavy debug that is greatly
> > increasing the overhead of the scheduling-clock interrupt.
> >
> > Now, if that was the case, I would expect the 250HZ number to have
> > three-quarters of the improvement of the nohz_full number compared
> > to the 1000HZ number:
> >> 17415.60-14866.05=2549.55
> > 18505.52-14866.05=3639.47
> >
> > 2549.55/3639.47=0.70
>
> I wonder if the difference here could possibly also be because of CPU idle
> governor. It may behave differently at differently clock rates so perhaps has
> different overhead.
Could be, but, again, the balanced power mode could play a major role
here.
>
> I have added trying nohz full to my list as well to evaluate. FWIW, when we
> moved from 250HZ to 1000HZ, it actually improved power because the CPUidle
> governor could put the CPUs in deeper idle states more quickly!
Interesting, another benefit to add to my proposal. :)
>
> > OK, 0.70 is not *that* far off of 0.75. So what debugging does that
> > test have enabled? Also, if you use tracing (or whatever) to measure
> > the typical duration of the scheduling-clock interrupt and related things
> > like softirq handlers, does it fit with these numbers? Such a measurment
> > would look at how long it took to get back into userspace.
>
> Thanks for your detailed questions. I will add Andrea Righi to this list thread
> since he is the author of the bug report. Andrea do you mind clarifying a few
> things mentioned above? Also nice to see you are using CONFIG_RCU_LAZY for Ubuntu :)
Thanks for including me. Sorry that I didn't provide much details of my
tests.
And yes, I really want to see CONFIG_RCU_LAZY enabled in the stock
Ubuntu kernel, so the battery of my laptop lasts longer when I go to
conferences. :)
-Andrea
>
> thanks,
>
> - Joel
>
>
> >
> >> Cheers,
> >>
> >> - Joel
> >>
> >> [1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2051342
> >
next prev parent reply other threads:[~2024-01-30 6:58 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-29 17:47 Observation on NOHZ_FULL Joel Fernandes
2024-01-29 20:41 ` Paul E. McKenney
2024-01-29 22:16 ` Joel Fernandes
2024-01-30 6:58 ` Andrea Righi [this message]
2024-01-30 10:17 ` Paul E. McKenney
2024-01-30 11:06 ` Uladzislau Rezki
2024-01-30 11:27 ` Andrea Righi
2024-01-30 11:41 ` Uladzislau Rezki
2024-01-30 13:39 ` Paul E. McKenney
2024-02-06 17:51 ` Andrea Righi
2024-02-06 18:44 ` Paul E. McKenney
2024-02-07 13:04 ` Uladzislau Rezki
2024-02-07 15:12 ` Andrea Righi
2024-02-07 15:49 ` Joel Fernandes
2024-02-15 7:51 ` Andrea Righi
2024-02-15 13:15 ` Uladzislau Rezki
2024-02-15 14:02 ` Joel Fernandes
2024-02-07 15:48 ` Joel Fernandes
2024-02-07 16:31 ` Andrea Righi
2024-02-07 16:52 ` Joel Fernandes
2024-02-07 17:05 ` Andrea Righi
2024-02-08 5:54 ` Joel Fernandes
2024-02-08 6:55 ` Andrea Righi
2024-02-08 12:53 ` Uladzislau Rezki
2024-02-08 14:51 ` Uladzislau Rezki
2024-02-12 0:22 ` Joel Fernandes
2024-02-12 9:05 ` Uladzislau Rezki
2024-02-12 9:44 ` Uladzislau Rezki
2024-01-29 20:48 ` Uladzislau Rezki
2024-01-29 22:20 ` Joel Fernandes
2024-01-29 22:43 ` Frederic Weisbecker
2024-01-29 22:53 ` Joel Fernandes
2024-01-29 23:11 ` Frederic Weisbecker
2024-01-29 23:36 ` Joel Fernandes
2024-01-30 0:40 ` Paul E. McKenney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZbieCjYk8cIgZS8L@gpd \
--to=andrea.righi@canonical.com \
--cc=fweisbec@gmail.com \
--cc=joel@joelfernandes.org \
--cc=joelaf@google.com \
--cc=paulmck@kernel.org \
--cc=rcu@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox