From: Peter Zijlstra <peterz@infradead.org>
To: David Dai <davidai@google.com>
Cc: Ingo Molnar <mingo@redhat.com>,
Juri Lelli <juri.lelli@redhat.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Steven Rostedt <rostedt@goodmis.org>,
Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
Daniel Bristot de Oliveira <bristot@redhat.com>,
Valentin Schneider <vschneid@redhat.com>,
Saravana Kannan <saravanak@google.com>,
kernel-team@android.com, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 1/6] sched/fair: Add util_guest for tasks
Date: Thu, 6 Apr 2023 09:33:30 +0200 [thread overview]
Message-ID: <20230406073330.GA386572@hirez.programming.kicks-ass.net> (raw)
In-Reply-To: <CABN1KCLjXpxNak90iowd0iiz9SD8-5n+6S3kEoCKO9NantyXxg@mail.gmail.com>
On Wed, Apr 05, 2023 at 03:54:08PM -0700, David Dai wrote:
> On Wed, Apr 5, 2023 at 1:14 AM Peter Zijlstra <peterz@infradead.org> wrote:
> >
>
> Hi Peter,
>
> Appreciate your time,
>
> > On Thu, Mar 30, 2023 at 03:43:36PM -0700, David Dai wrote:
> > > @@ -499,6 +509,7 @@ struct sched_avg {
> > > unsigned long load_avg;
> > > unsigned long runnable_avg;
> > > unsigned long util_avg;
> > > + unsigned long util_guest;
> > > struct util_est util_est;
> > > } ____cacheline_aligned;
> > >
> >
> > Yeah, no... you'll have to make room first.
> >
>
> I’m not sure what you mean. Do you mean making room by reducing
> another member in the same struct? If so, which member would be a good
> fit to shorten? Or do you mean something else entirely?
Yeah, as you can see below, this structure is completely filling up the
cacheline already so there's no room for another member. I've not looked
at this in detail in a little while so I'm not at all sure what would be
the easiest way to free up space.
Going by the rest of the discusion is seems this is the least of your
problems though.
> > struct sched_avg {
> > /* typedef u64 -> __u64 */ long long unsigned int last_update_time; /* 0 8 */
> > /* typedef u64 -> __u64 */ long long unsigned int load_sum; /* 8 8 */
> > /* typedef u64 -> __u64 */ long long unsigned int runnable_sum; /* 16 8 */
> > /* typedef u32 -> __u32 */ unsigned int util_sum; /* 24 4 */
> > /* typedef u32 -> __u32 */ unsigned int period_contrib; /* 28 4 */
> > long unsigned int load_avg; /* 32 8 */
> > long unsigned int runnable_avg; /* 40 8 */
> > long unsigned int util_avg; /* 48 8 */
> > struct util_est {
> > unsigned int enqueued; /* 56 4 */
> > unsigned int ewma; /* 60 4 */
> > } __attribute__((__aligned__(8)))util_est __attribute__((__aligned__(8))); /* 56 8 */
> >
> > /* size: 64, cachelines: 1, members: 9 */
> > /* forced alignments: 1 */
> > } __attribute__((__aligned__(64)));
> >
> >
next prev parent reply other threads:[~2023-04-06 7:33 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-30 22:43 [RFC PATCH 0/6] Improve VM DVFS and task placement behavior David Dai
2023-03-30 22:43 ` [RFC PATCH 1/6] sched/fair: Add util_guest for tasks David Dai
2023-04-03 11:40 ` Dietmar Eggemann
2023-04-04 1:11 ` David Dai
2023-04-05 8:29 ` Quentin Perret
2023-04-05 10:50 ` Dietmar Eggemann
2023-04-05 21:42 ` Saravana Kannan
2023-04-05 23:36 ` David Dai
2023-04-05 8:14 ` Peter Zijlstra
2023-04-05 22:54 ` David Dai
2023-04-06 7:33 ` Peter Zijlstra [this message]
2023-03-30 22:43 ` [RFC PATCH 2/6] kvm: arm64: Add support for get_cur_cpufreq service David Dai
2023-04-05 8:04 ` Quentin Perret
2023-03-30 22:43 ` [RFC PATCH 3/6] kvm: arm64: Add support for util_hint service David Dai
2023-03-30 22:43 ` [RFC PATCH 4/6] kvm: arm64: Add support for get_freqtbl service David Dai
2023-03-30 22:43 ` [RFC PATCH 5/6] dt-bindings: cpufreq: add bindings for virtual kvm cpufreq David Dai
2023-03-30 22:43 ` [RFC PATCH 6/6] cpufreq: add kvm-cpufreq driver David Dai
2023-04-05 8:22 ` Peter Zijlstra
2023-04-05 22:42 ` David Dai
2023-03-30 23:20 ` [RFC PATCH 0/6] Improve VM DVFS and task placement behavior Oliver Upton
2023-03-30 23:36 ` Saravana Kannan
2023-03-30 23:40 ` Oliver Upton
2023-03-31 0:34 ` Saravana Kannan
2023-03-31 0:49 ` Matthew Wilcox
2023-04-03 10:18 ` Mel Gorman
2023-04-04 19:43 ` Oliver Upton
2023-04-04 20:49 ` Marc Zyngier
2023-04-05 7:48 ` Quentin Perret
2023-04-05 8:33 ` Vincent Guittot
2023-04-05 21:07 ` Saravana Kannan
2023-04-06 12:52 ` Quentin Perret
2023-04-06 21:39 ` David Dai
2023-04-05 21:00 ` Saravana Kannan
2023-04-06 8:42 ` Marc Zyngier
2023-04-05 8:05 ` Peter Zijlstra
2023-04-05 21:08 ` Saravana Kannan
2023-04-06 7:36 ` Peter Zijlstra
2023-04-06 7:38 ` Peter Zijlstra
2023-04-27 7:46 ` Pavan Kondeti
2023-04-27 9:52 ` Gupta, Pankaj
2023-04-27 11:26 ` Pavan Kondeti
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=20230406073330.GA386572@hirez.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=bristot@redhat.com \
--cc=bsegall@google.com \
--cc=davidai@google.com \
--cc=dietmar.eggemann@arm.com \
--cc=juri.lelli@redhat.com \
--cc=kernel-team@android.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=rostedt@goodmis.org \
--cc=saravanak@google.com \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
/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