From: Peter Zijlstra <peterz@infradead.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
Vincent Guittot <vincent.guittot@linaro.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Mike Galbraith <efault@gmx.de>
Subject: Re: [PATCH 2/3] sched: Move idle_balance() to post_schedule
Date: Fri, 15 Feb 2013 12:51:20 +0100 [thread overview]
Message-ID: <1360929080.27535.9.camel@laptop> (raw)
In-Reply-To: <1360782338.23152.22.camel@gandalf.local.home>
On Wed, 2013-02-13 at 14:05 -0500, Steven Rostedt wrote:
> That is, the CPU is about to go idle, thus a load balance is done, and
> perhaps a task is pulled to the current queue. To do this, rq locks
> and
> such need to be grabbed across CPUs.
Right, grabbing the rq locks and all isn't my main worry, we do that
either case, but my worry was the two extra switches we do for no good
reason at all.
Now its not as if we'll actually run the idle thread, that would be very
expensive indeed, so its just the two context_switch() calls, but still,
I somehow remember us spending quite a lot of effort to keep
idle_balance where it is now, if only I could remember the benchmark we
had for it :/
Can't you do the opposite and fold post_schedule() into idle_balance()?
/me goes stare at code to help remember what the -rt requirements were
again..
Ah, so that's push_rt_task() which wants to move extra rt tasks to other
cpus. Doing that from where we have idle_balance() won't actually work I
think since we might need to move current, which we cannot at that point
-- I'm thinking a higher prio task (than current) waking to this cpu and
then cascading current to another cpu, can that happen?
If we never need to migrate current because we don't do the cascade by
ensuring we wake the higher prio task to the approriate cpu we might
just get away with it.
next prev parent reply other threads:[~2013-02-15 11:51 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-12 22:54 [PATCH 0/3] [GIT PULL] sched: clean ups and a minor fix Steven Rostedt
2013-02-12 22:54 ` [PATCH 1/3] sched/rt: Fix push_rt_task() to have the same checks as the caller did Steven Rostedt
2013-02-12 22:54 ` [PATCH 2/3] sched: Move idle_balance() to post_schedule Steven Rostedt
2013-02-13 18:43 ` Peter Zijlstra
2013-02-13 19:05 ` Steven Rostedt
2013-02-15 11:51 ` Peter Zijlstra [this message]
2013-02-15 13:37 ` Steven Rostedt
2013-02-14 14:25 ` Steven Rostedt
2013-02-12 22:54 ` [PATCH 3/3] sched: Enable interrupts in idle_balance() Steven Rostedt
2013-02-13 8:33 ` [PATCH 0/3] [GIT PULL] sched: clean ups and a minor fix Ingo Molnar
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=1360929080.27535.9.camel@laptop \
--to=peterz@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=efault@gmx.de \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=vincent.guittot@linaro.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