From: Adrian Bunk <bunk@stusta.de>
To: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: Bodo Eggert <7eggert@gmx.de>, Andi Kleen <andi@firstfloor.org>,
Alexey Dobriyan <adobriyan@gmail.com>,
akpm@linux-foundation.org, linux-kernel@vger.kernel.org
Subject: Re: [patch 10/10] Scheduler profiling - Use immediate values
Date: Fri, 6 Jul 2007 23:08:40 +0200 [thread overview]
Message-ID: <20070706210840.GP3492@stusta.de> (raw)
In-Reply-To: <20070705154644.GA22597@Krystal>
On Thu, Jul 05, 2007 at 11:46:44AM -0400, Mathieu Desnoyers wrote:
> * Bodo Eggert (7eggert@gmx.de) wrote:
> > Andi Kleen <andi@firstfloor.org> wrote:
> > > Alexey Dobriyan <adobriyan@gmail.com> writes:
> > >> On Tue, Jul 03, 2007 at 12:40:56PM -0400, Mathieu Desnoyers wrote:
> >
> > >> > Use immediate values with lower d-cache hit in optimized version as a
> > >> > condition for scheduler profiling call.
> > >>
> > >> I think it's better to put profile.c under CONFIG_PROFILING as
> > >> _expected_, so CONFIG_PROFILING=n users won't get any overhead, immediate or
> > >> not. That's what I'm going to do after test-booting bunch of kernels.
> > >
> > > No, it's better to handle this efficiently at runtime e.g. for
> > > distribution kernels. Mathieu's patch is good
> >
> > IMO you should combine them. For distibutions, it may be good to include
> > profiling support unconditionally, but how many of the vanilla kernel users
> > are going to use profiling at all?
>
> For CONFIG_PROFILING, I think of it more like a chicken and egg problem:
> as long as it won't be easy to enable when needed in distributions
> kernels, few profiling applications will use it. So if you ban it from
> distros kernel with a CONFIG option under the pretext that no profiling
> application use it, you run straight into a conceptual deadlock. :)
>
> Another simliar example would be CONFIG_TIMER_STATS, used by powertop,
> which users will use to tune their laptops (I got 45 minutes more
> battery time on mine thanks to this wonderful tool). Compiling-in, but
> dynamically turning it on/off makes sense for a lot of kernel
> "profiling/stats extraction" mechanisms like those.
>
> But I suspect they will be used by distros only when their presence when
> disabled will be unnoticeable or when a major portion of their users
> will yell loudly enough telling that they want this and this features,
> leaving the more specialized minority of distro users without these
> features that they need to fine-tune their applications or their kernel.
There's a surprisingly simple solution solving the problems you describe:
For userspace libraries, the common approach is to get them stripped and
have versions with all debugging symbols in some -dbg package. So if you
want to debug an application using such a library, you simply install
this -dbg package.
Just let distributions make the same for the kernel - add a -dbg flavour
with many debugging options enabled. It might perhaps run 5% or 20%
slower than the regular kernel, but you don't need profiling or powertop
during normal operation - these are _debug_ tools.
This way, there's no runtime penalty and therefore no trickery
required for getting the overhead of _debug code_ lower.
> Mathieu
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
next prev parent reply other threads:[~2007-07-06 21:08 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <8CTJM-4Z1-27@gated-at.bofh.it>
[not found] ` <8CU38-5E1-23@gated-at.bofh.it>
[not found] ` <8DjNU-4bL-47@gated-at.bofh.it>
[not found] ` <8DkTC-5Vy-11@gated-at.bofh.it>
2007-07-05 15:23 ` [patch 10/10] Scheduler profiling - Use immediate values Bodo Eggert
2007-07-05 15:46 ` Mathieu Desnoyers
2007-07-06 21:08 ` Adrian Bunk [this message]
2007-07-03 16:40 [patch 00/10] Immediate Values Mathieu Desnoyers
2007-07-03 16:40 ` [patch 10/10] Scheduler profiling - Use immediate values Mathieu Desnoyers
2007-07-03 18:11 ` Alexey Dobriyan
2007-07-03 18:57 ` Mathieu Desnoyers
2007-07-04 14:23 ` Adrian Bunk
2007-07-04 20:31 ` Alexey Dobriyan
2007-07-05 20:21 ` Andrew Morton
2007-07-05 20:29 ` Andrew Morton
2007-07-05 20:41 ` Mathieu Desnoyers
2007-07-06 11:44 ` Andi Kleen
2007-07-06 17:50 ` Li, Tong N
2007-07-06 20:03 ` Andi Kleen
2007-07-06 20:57 ` Li, Tong N
2007-07-06 21:03 ` Mathieu Desnoyers
2007-07-06 22:14 ` Chuck Ebbert
2007-07-06 23:28 ` Adrian Bunk
2007-07-06 23:38 ` Dave Jones
2007-07-07 0:10 ` Adrian Bunk
2007-07-07 15:45 ` Frank Ch. Eigler
2007-07-07 17:01 ` Adrian Bunk
2007-07-07 17:20 ` Willy Tarreau
2007-07-07 17:59 ` Adrian Bunk
2007-07-07 17:55 ` Frank Ch. Eigler
2007-07-06 23:43 ` Mathieu Desnoyers
2007-07-07 2:25 ` Adrian Bunk
2007-07-07 2:35 ` Mathieu Desnoyers
2007-07-07 4:03 ` Adrian Bunk
2007-07-07 5:02 ` Willy Tarreau
2007-07-04 20:35 ` Alexey Dobriyan
2007-07-04 22:41 ` Andi Kleen
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=20070706210840.GP3492@stusta.de \
--to=bunk@stusta.de \
--cc=7eggert@gmx.de \
--cc=adobriyan@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@polymtl.ca \
/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.