From: Hollis Blanchard <hollisb@us.ibm.com>
To: Otto Solares <solca@guug.org>
Cc: "J.A. Magallon" <jamagallon@able.es>,
Alan Cox <alan@lxorguk.ukuu.org.uk>,
David McCullough <davidm@snapgear.com>,
uclinux-dev@uclinux.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Ihar Philips Filipau <filia@softhome.net>
Subject: Re: [uClinux-dev] Kernel 2.6 size increase - get_current()?
Date: Fri, 25 Jul 2003 09:38:09 -0500 [thread overview]
Message-ID: <9CA735B0-BEAD-11D7-BEDE-000A95A0560C@us.ibm.com> (raw)
In-Reply-To: <20030725042235.GA7777@guug.org>
On Thursday, Jul 24, 2003, at 23:22 US/Central, Otto Solares wrote:
> On Thu, Jul 24, 2003 at 11:20:00PM +0200, J.A. Magallon wrote:
>> Or you just define must_inline, and let gcc inline the rest of
>> 'inlines',
>> based on its own rule of functions size, adjusting the parameters
>> to gcc to assure (more or less) that what is inlined fits in cache of
>> the processor one is building for...
>> (this can be hard, help from gcc hackers will be needed...)
>
> IMO just a CONFIG_INLINE_FUNCTIONS will work, if you
> want to conserve space in detriment of speed simply
> don't select this option, else you have speed but
> a big kernel.
Inlines don't always help performance (depending on cache sizes, branch
penalties, frequency of code access...), but they do always increase
code size.
I believe the point Alan was trying to make is not that we should have
more or less inlines, but we should have smarter inlines. I.E. don't
just inline a function to "make it fast"; think about the implications
(and ideally measure it, though I think that becomes problematic when
so many other factors can affect the benefit of a single inlined
function). The specific example he gave was inlining code on the fast
path, while accepting branch/cache penalties for non-inlined code on
the slow path.
--
Hollis Blanchard
IBM Linux Technology Center
next prev parent reply other threads:[~2003-07-25 14:23 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-23 18:46 Kernel 2.6 size increase Bernardo Innocenti
2003-07-23 19:14 ` Richard B. Johnson
2003-07-23 20:07 ` David S. Miller
2003-07-23 21:47 ` Randy.Dunlap
2003-07-23 19:32 ` [uClinux-dev] " Christoph Hellwig
2003-07-23 20:11 ` David S. Miller
2003-07-23 20:15 ` Christoph Hellwig
2003-07-23 20:22 ` David S. Miller
2003-07-23 20:27 ` Christoph Hellwig
2003-07-23 22:35 ` [uClinux-dev] Kernel 2.6 size increase - get_current()? Bernardo Innocenti
2003-07-23 22:37 ` Alan Cox
2003-07-23 23:00 ` Bernardo Innocenti
2003-07-24 5:06 ` David McCullough
2003-07-24 11:28 ` Alan Cox
2003-07-24 12:04 ` David McCullough
2003-07-24 14:48 ` Alan Cox
2003-07-25 18:25 ` bill davidsen
2003-07-24 15:30 ` Hollis Blanchard
2003-07-24 19:37 ` Alan Cox
2003-07-24 19:51 ` Hollis Blanchard
2003-07-24 21:20 ` J.A. Magallon
2003-07-25 4:22 ` Otto Solares
2003-07-25 14:38 ` Hollis Blanchard [this message]
2003-07-28 3:19 ` Miles Bader
2003-07-28 8:14 ` Ihar "Philips" Filipau
2003-07-28 8:58 ` Miles Bader
2003-07-28 9:03 ` Ihar "Philips" Filipau
2003-07-23 21:57 ` [uClinux-dev] Kernel 2.6 size increase Bernardo Innocenti
2003-07-23 22:07 ` Bernardo Innocenti
2003-07-23 22:27 ` Willy Tarreau
2003-07-23 22:34 ` Alan Cox
2003-07-24 20:27 ` Bernardo Innocenti
2003-07-25 15:46 ` Christoph Hellwig
2003-07-25 23:55 ` [PATCH] Make I/O schedulers optional (Was: Re: Kernel 2.6 size increase) Bernardo Innocenti
2003-07-26 8:17 ` Andrew Morton
2003-07-26 12:40 ` Bernardo Innocenti
2003-07-26 14:07 ` Jens Axboe
2003-07-26 23:42 ` Bernardo Innocenti
2003-07-26 23:41 ` Jens Axboe
2003-07-28 17:13 ` [uClinux-dev] Kernel 2.6 size increase Nicolas Pitre
2003-07-28 23:02 ` Bernardo Innocenti
2003-07-29 2:36 ` Miles Bader
2003-08-08 13:25 ` [uClinux-dev] " David Woodhouse
2003-08-08 14:37 ` Bernardo Innocenti
2003-08-08 14:43 ` David Woodhouse
2003-07-25 18:16 ` bill davidsen
2003-07-29 22:29 ` Tom Rini
2003-07-29 22:48 ` Alan Cox
2003-07-29 23:06 ` Tom Rini
2003-07-30 2:07 ` Miles Bader
2003-07-30 15:33 ` Tom Rini
2003-07-31 1:49 ` Miles Bader
2003-07-31 4:17 ` Tom Rini
2003-07-31 5:03 ` Miles Bader
2003-07-31 15:24 ` Tom Rini
2003-07-30 2:49 ` [uClinux-dev] " Bernardo Innocenti
2003-07-30 15:35 ` Tom Rini
2003-07-30 16:45 ` [uClinux-dev] Kernel 2.6 size increase (PATCH) Bernardo Innocenti
[not found] <cwQJ.3BO.29@gated-at.bofh.it>
[not found] ` <cypH.5dM.35@gated-at.bofh.it>
[not found] ` <cyza.5lN.13@gated-at.bofh.it>
[not found] ` <cArg.74D.11@gated-at.bofh.it>
2003-07-24 8:13 ` [uClinux-dev] Kernel 2.6 size increase - get_current()? Ihar "Philips" Filipau
2003-07-25 7:25 ` Denis Vlasenko
2003-07-25 18:36 ` bill davidsen
2003-07-24 8:27 Ihar "Philips" Filipau
2003-07-24 11:50 ` David McCullough
[not found] <d2nx.4QV.15@gated-at.bofh.it>
[not found] ` <dbTZ.5Z5.19@gated-at.bofh.it>
2003-07-25 15:37 ` Ihar "Philips" Filipau
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=9CA735B0-BEAD-11D7-BEDE-000A95A0560C@us.ibm.com \
--to=hollisb@us.ibm.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=davidm@snapgear.com \
--cc=filia@softhome.net \
--cc=jamagallon@able.es \
--cc=linux-kernel@vger.kernel.org \
--cc=solca@guug.org \
--cc=uclinux-dev@uclinux.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 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.