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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.