linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Vincent Guittot <vincent.guittot@linaro.org>
Cc: linux-kernel@vger.kernel.org, linux-hotplug@vger.kernel.org,
	fweisbec@gmail.com, rostedt@goodmis.org,
	amit.kucheria@linaro.org, rusty@rustcorp.com.au,
	tglx@linutronix.de, Arjan van de Ven <arjan@infradead.org>,
	Thomas Renninger <trenn@suse.de>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH V6 0/2] tracing, perf: cpu hotplug trace events
Date: Wed, 02 Mar 2011 07:56:25 +0000	[thread overview]
Message-ID: <20110302075625.GC15665@elte.hu> (raw)
In-Reply-To: <AANLkTinbYWQxde2jTcAtyYQGvGgt2Lmtnph=voj=haXF@mail.gmail.com>


* Vincent Guittot <vincent.guittot@linaro.org> wrote:

> This patchset adds some tracepoints for tracing cpu state and for
> profiling the plug and unplug sequence.
> 
> Some SMP arm platform uses cpu hotplug feature for improving their
> power saving because they can go into their deepest idle state only in
> mono core mode. In addition, running into mono core mode makes the
> cpuidle job easier and more efficient which also results in the
> improvement of power saving of some use cases. As the plug state of a
> cpu can impact the cpuidle behavior, it's interesting to trace this
> state and to correlate it with cpuidle traces.
> Then, cpu hotplug is known to be an expensive operation which also
> takes a variable time depending of other processes' activity (from
> hundreds ms up to few seconds). These traces have shown that the arch
> part stays almost constant on arm platform whatever the cpu load is,
> whereas the plug duration increases.
> 
> ---
>  include/trace/events/cpu_hotplug.h |  103 ++++++++++++++++++++++++++++++++++++
>  kernel/cpu.c                       |   18 ++++++
>  2 files changed, 121 insertions(+), 0 deletions(-)
>  create mode 100644 include/trace/events/cpu_hotplug.h

Why not do something much simpler and fit these into the existing power:* events:

     power:cpu_idle
     power:cpu_frequency
     power:machine_suspend
     power:cpu_idle
     power:cpu_frequency
     power:machine_suspend

in an intelligent way?

CPU hotplug is really a 'soft' form of suspend and tools using power events could 
thus immediately use CPU hotplug events as well.

A suitable new 'state' value could be used to signal CPU hotplug events:

 enum {
        POWER_NONE = 0,
        POWER_CSTATE = 1,
        POWER_PSTATE = 2,
 };

POWER_HSTATE for hotplug-state, or so.

This would also express the design arguments that others have pointed out in the 
prior discussion: that CPU hotplug is really a power management variant, and that in 
the long run it could be done via regular idle as well. When that happens, the above 
unified event structure makes it all even simpler - analysis tools will just 
continue to work fine.

Thanks,

	Ingo

  reply	other threads:[~2011-03-02  7:56 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-01 16:05 [PATCH V6 0/2] tracing, perf: cpu hotplug trace events Vincent Guittot
2011-03-02  7:56 ` Ingo Molnar [this message]
2011-03-02 10:57   ` Thomas Renninger
2011-03-02 19:02     ` Vincent Guittot
2011-03-02 22:07       ` Thomas Renninger
2011-03-03 22:42         ` Steven Rostedt
2011-03-07 11:25           ` Amit Kucheria

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=20110302075625.GC15665@elte.hu \
    --to=mingo@elte.hu \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=amit.kucheria@linaro.org \
    --cc=arjan@infradead.org \
    --cc=fweisbec@gmail.com \
    --cc=hpa@zytor.com \
    --cc=linux-hotplug@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=rusty@rustcorp.com.au \
    --cc=tglx@linutronix.de \
    --cc=trenn@suse.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;
as well as URLs for NNTP newsgroup(s).