From: Peter Zijlstra <peterz@infradead.org>
To: Dario Faggioli <raistlin@linux.it>
Cc: Harald Gustafsson <harald.gustafsson@ericsson.com>,
Harald Gustafsson <hgu1972@gmail.com>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
Thomas Gleixner <tglx@linutronix.de>,
Claudio Scordino <claudio@evidence.eu.com>,
Michael Trimarchi <trimarchi@retis.sssup.it>,
Fabio Checconi <fabio@gandalf.sssup.it>,
Tommaso Cucinotta <cucinotta@sssup.it>,
Juri Lelli <juri.lelli@gmail.com>
Subject: Re: [PATCH 1/3] Added runqueue clock normalized with cpufreq
Date: Fri, 17 Dec 2010 19:59:45 +0100 [thread overview]
Message-ID: <1292612385.2708.108.camel@laptop> (raw)
In-Reply-To: <1292612166.2697.68.camel@Palantir>
On Fri, 2010-12-17 at 19:56 +0100, Dario Faggioli wrote:
> On Fri, 2010-12-17 at 15:29 +0100, Peter Zijlstra wrote:
> > Solving the CPUfreq problem involves writing a SCHED_DEADLINE aware
> > CPUfreq governor. The governor must know about the constraints placed on
> > the system by the task-set. You simply cannot lower the frequency when
> > your system is at u=1.
> >
> We already did the very same thing (for another EU Project called
> FRESCOR), although it was done in an userspace sort of daemon. It was
> also able to consider other "high level" parameters like some estimation
> of the QoS of each application and of the global QoS of the system.
>
> However, converting the basic mechanism into a CPUfreq governor should
> be easily doable... The only problem is finding the time for that! ;-P
Ah, I think Harald will solve that for you,.. :)
> > The simple solution would be to slow down the runtime accounting of
> > SCHED_DEADLINE tasks by freq/max_freq. So instead of having:
> >
> > dl_se->runtime -= delta;
> >
> > you do something like:
> >
> > dl_se->runtime -= (freq * delta) / max_freq;
> >
> > Which auto-magically grows the actual bandwidth, and since the deadlines
> > are wall-time already it all works out nicely. It also keeps the
> > overhead inside SCHED_DEADLINE.
> >
> And, at least for the meantime, this seems a very very nice solution.
> The only thing I don't like is that division which would end up in being
> performed at each tick/update_curr_dl(), but we can try to find out a
> way to mitigate this, what do you think Harald?
A simple mult and shift-right should do. You can either pre-compute for
a platform, or compute the inv multiplier in the cpufreq notifier thing.
next prev parent reply other threads:[~2010-12-17 19:02 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-17 13:02 [PATCH 1/3] Added runqueue clock normalized with cpufreq Harald Gustafsson
2010-12-17 13:02 ` [PATCH 2/3] cpufreq normalized runtime to enforce runtime cycles also at lower frequencies Harald Gustafsson
2010-12-17 13:02 ` [PATCH 3/3] sched trace updated with normalized clock info Harald Gustafsson
2010-12-17 14:29 ` [PATCH 1/3] Added runqueue clock normalized with cpufreq Peter Zijlstra
2010-12-17 14:32 ` Peter Zijlstra
2010-12-17 15:06 ` Harald Gustafsson
2010-12-17 15:16 ` Peter Zijlstra
2010-12-17 15:36 ` Harald Gustafsson
2010-12-17 15:43 ` Thomas Gleixner
2010-12-17 15:54 ` Harald Gustafsson
2010-12-17 18:44 ` Dario Faggioli
2011-01-03 14:17 ` Pavel Machek
2010-12-17 15:02 ` Harald Gustafsson
2010-12-17 18:48 ` Dario Faggioli
2010-12-17 18:56 ` Dario Faggioli
2010-12-17 18:59 ` Peter Zijlstra [this message]
2010-12-17 19:16 ` Dario Faggioli
2010-12-17 19:31 ` Harald Gustafsson
2010-12-20 0:11 ` Tommaso Cucinotta
2010-12-20 9:44 ` Harald Gustafsson
2011-01-03 20:25 ` Tommaso Cucinotta
2011-01-04 12:16 ` Harald Gustafsson
2010-12-17 19:27 ` Harald Gustafsson
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=1292612385.2708.108.camel@laptop \
--to=peterz@infradead.org \
--cc=claudio@evidence.eu.com \
--cc=cucinotta@sssup.it \
--cc=fabio@gandalf.sssup.it \
--cc=harald.gustafsson@ericsson.com \
--cc=hgu1972@gmail.com \
--cc=juri.lelli@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=raistlin@linux.it \
--cc=tglx@linutronix.de \
--cc=trimarchi@retis.sssup.it \
/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.