From: Kajetan Puchalski <kajetan.puchalski@arm.com>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Linux PM <linux-pm@vger.kernel.org>,
Peter Zijlstra <peterz@infradead.org>,
Anna-Maria Behnsen <anna-maria@linutronix.de>,
LKML <linux-kernel@vger.kernel.org>,
Frederic Weisbecker <frederic@kernel.org>
Subject: Re: [RFT][PATCH v2 0/3] cpuidle: teo: Do not check timers unconditionally every time
Date: Mon, 7 Aug 2023 15:00:59 +0100 [thread overview]
Message-ID: <ZND5CL6Kl9RnDdhL@e126311.manchester.arm.com> (raw)
In-Reply-To: <5712331.DvuYhMxLoT@kreacher>
Hi Rafael,
On Thu, Aug 03, 2023 at 10:57:04PM +0200, Rafael J. Wysocki wrote:
> Hi Folks,
>
> This is the second iteration of:
>
> https://lore.kernel.org/linux-pm/4511619.LvFx2qVVIh@kreacher/
>
> with an additional patch.
>
> There are some small modifications of patch [1/3] and the new
> patch causes governor statistics to play a role in deciding whether
> or not to stop the scheduler tick.
>
> Testing would be much appreciated!
>
> Thanks!
>
My test results including the v2 are below.
1. Geekbench 6
+---------------------------+---------------+-----------------+-------------------+----------------------+
| metric | teo | teo_tick | teo_tick_rfc | teo_tick_rfc_v2 |
+---------------------------+---------------+-----------------+-------------------+----------------------+
| multicore_score | 3320.9 (0.0%) | 3303.3 (-0.53%) | 3293.6 (-0.82%) | 3302.3 (-0.56%) |
| score | 1415.7 (0.0%) | 1417.7 (0.14%) | 1423.4 (0.54%) | 1425.8 (0.71%) |
| CPU_total_power | 2421.3 (0.0%) | 2429.3 (0.33%) | 2442.2 (0.86%) | 2461.9 (1.67%) |
| latency (AsyncTask #1) | 49.41μ (0.0%) | 51.07μ (3.36%) | 50.1μ (1.4%) | 50.76μ (2.73%) |
| latency (labs.geekbench6) | 65.63μ (0.0%) | 77.47μ (18.03%) | 55.82μ (-14.95%) | 66.12μ (0.75%) |
| latency (surfaceflinger) | 39.46μ (0.0%) | 36.94μ (-6.39%) | 35.79μ (-9.28%) | 40.36μ (2.3%) |
+---------------------------+---------------+-----------------+-------------------+----------------------+
+----------------------+-------------+------------+
| tag | type | count_perc |
+----------------------+-------------+------------+
| teo | too deep | 2.034 |
| teo_tick | too deep | 2.16 |
| teo_tick_rfc | too deep | 2.071 |
| teo_tick_rfc_v2 | too deep | 2.548 |
| teo | too shallow | 15.791 |
| teo_tick | too shallow | 20.881 |
| teo_tick_rfc | too shallow | 20.337 |
| teo_tick_rfc_v2 | too shallow | 19.886 |
+----------------------+-------------+------------+
2. JetNews
+-----------------+---------------+----------------+-----------------+-----------------+
| metric | teo | teo_tick | teo_tick_rfc | teo_tick_rfc_v2 |
+-----------------+---------------+----------------+-----------------+-----------------+
| fps | 86.2 (0.0%) | 86.4 (0.16%) | 86.0 (-0.28%) | 86.6 (0.41%) |
| janks_pc | 0.8 (0.0%) | 0.8 (-0.66%) | 0.8 (-1.37%) | 0.7 (-11.37%) |
| CPU_total_power | 185.2 (0.0%) | 178.2 (-3.76%) | 182.2 (-1.6%) | 169.4 (-8.53%) | <- very interesting
+-----------------+---------------+----------------+-----------------+-----------------+
+----------------------+-------------+--------------------+
| tag | type | count_perc |
+----------------------+-------------+--------------------+
| teo | too deep | 0.992 |
| teo_tick | too deep | 0.945 |
| teo_tick_rfc | too deep | 1.035 |
| teo_tick_rfc_v2 | too deep | 1.127 |
| teo | too shallow | 17.085 |
| teo_tick | too shallow | 15.236 |
| teo_tick_rfc | too shallow | 15.379 |
| teo_tick_rfc_v2 | too shallow | 15.34 |
+----------------------+-------------+--------------------+
All in all looks pretty good. Unfortunately there's a slightly larger
percentage of too deep sleeps with the v2 (which is probably where the
increase in GB6 power usage comes from) but the lower jank percentage +
substantially lower power usage for the UI workload are very promising.
Since we don't care about GB6 power usage as much as UI power usage, I'd
say that the patchset looks good :)
Tested-by: Kajetan Puchalski <kajetan.puchalski@arm.com>
next prev parent reply other threads:[~2023-08-07 14:04 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-03 20:57 Rafael J. Wysocki
2023-08-03 21:07 ` [RFT][PATCH v2 1/3] cpuidle: teo: Do not call tick_nohz_get_sleep_length() upfront Rafael J. Wysocki
2023-08-03 21:09 ` [RFT][PATCH v2 2/3] cpuidle: teo: Skip tick_nohz_get_sleep_length() call in some cases Rafael J. Wysocki
2023-08-11 8:52 ` Anna-Maria Behnsen
2023-08-11 9:40 ` Rafael J. Wysocki
2023-08-03 21:11 ` [RFT][PATCH v2 3/3] cpuidle: teo: Gather statistics regarding whether or not to stop the tick Rafael J. Wysocki
2023-08-03 21:33 ` [RFT][PATCH v2 0/3] cpuidle: teo: Do not check timers unconditionally every time Rafael J. Wysocki
2023-08-07 15:38 ` Anna-Maria Behnsen
2023-08-07 15:39 ` Anna-Maria Behnsen
2023-08-07 16:47 ` Rafael J. Wysocki
2023-08-09 15:09 ` Anna-Maria Behnsen
2023-08-09 15:11 ` Rafael J. Wysocki
2023-08-08 15:22 ` Doug Smythies
2023-08-08 16:43 ` Rafael J. Wysocki
2023-08-08 22:40 ` Doug Smythies
2023-08-09 16:24 ` Anna-Maria Behnsen
2023-08-10 0:43 ` Doug Smythies
2023-08-10 1:08 ` Doug Smythies
2023-08-10 7:27 ` Rafael J. Wysocki
2023-08-07 14:00 ` Kajetan Puchalski [this message]
2023-08-07 16:46 ` Rafael J. Wysocki
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=ZND5CL6Kl9RnDdhL@e126311.manchester.arm.com \
--to=kajetan.puchalski@arm.com \
--cc=anna-maria@linutronix.de \
--cc=frederic@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=rjw@rjwysocki.net \
/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
all inboxes | Powered by JetHome®