public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: torvalds@transmeta.com (Linus Torvalds)
To: linux-kernel@vger.kernel.org
Subject: Re: [ACPI] ACPI mentioned on lwn.net/kernel
Date: Sat, 26 Jan 2002 01:00:12 +0000 (UTC)	[thread overview]
Message-ID: <a2sv2s$ge3$1@penguin.transmeta.com> (raw)
In-Reply-To: <200201251550.g0PFoIPa002738@tigger.cs.uni-dortmund.de> <200201250802.32508.bodnar42@phalynx.dhs.org> <jeelkes8y5.fsf@sykes.suse.de>

In article <jeelkes8y5.fsf@sykes.suse.de>,
Andreas Schwab  <schwab@suse.de> wrote:
>|> 
>|> Storing 30% less executable pages in memory?  Reading 30% less executable 
>|> pages off the disk?
>
>These are all startup costs that are lost in the noise the longer the
>program runs.

That's a load of bull.

Startup costs tend to _dominate_ most applications, except for
benchmarks, scientific loads and games/multimedia. 

Not surprisingly, those three categories are also the ones where lots of
optimizer tuning is regularly done. But it's a _small_ subset of the
general application load.

Note that not only do startup costs often dominate the rest, they are
psychologically very important. From a user standpoint, an application
that loads "instantly" is mostly viewed as being much more pleasant than
one that takes longer to load, even if the latter were to run faster
once loaded.

This is also something that only gets worse and worse with time. Not
only do caches get more and more important (because the CPU core gets
ever faster compared to the outside world), but they get larger as well.

And what that leads to is that the cache warmup phase (which is linear
wrt size of the problem) gets relatively _slower_ and bigger compared to
the warm cache behaviour (ie the running phase). So optimizing for size
is (a) the right thing to do and (b) going to be even more so in the
future.

It's sad that gcc relegates "optimize for size" to a second-class
citizen.  Instead of having a "-Os" (that optimizes for size and doesn't
work together with other optimizations), it would be better to have a
"-Olargecode", which explicitly enables "don't care about code size" for
those (few) applications where it makes sense.

		Linus

  parent reply	other threads:[~2002-01-26  1:01 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-25 15:42 [ACPI] ACPI mentioned on lwn.net/kernel Moore, Robert
2002-01-25 15:50 ` Horst von Brand
2002-01-25 16:02   ` Ryan Cumming
2002-01-25 16:15     ` Andreas Schwab
2002-01-25 20:05       ` Ryan Cumming
2002-01-26  1:00       ` Linus Torvalds [this message]
2002-01-26  3:41         ` Jamie Lokier
2002-01-26 16:39           ` Martin Eriksson
2002-01-26 16:47             ` Jeff Garzik
2002-01-26 17:48               ` Jamie Lokier
2002-01-26 18:25                 ` Martin Eriksson
2002-01-26 21:42             ` Linus Torvalds
2002-01-30  9:22               ` Andrey Panin
     [not found]                 ` <Pine.LNX.4.33.0201291412590.18804-100000@coffee.psychology.mcmaster.ca>
2002-01-30  8:00                   ` Andrey Panin
2002-01-26 17:33         ` Felix von Leitner
2002-01-26 19:40           ` Florian Weimer
2002-01-27 13:56         ` Martin Dalecki
  -- strict thread matches above, loose matches on Subject: below --
2002-01-27 23:58 Dieter Nützel
     [not found] <200201251550.g0PFoIPa002738@tigger.cs.uni-dortmund.de.suse.lists.linux.kernel>
     [not found] ` <200201250802.32508.bodnar42@phalynx.dhs.org.suse.lists.linux.kernel>
     [not found]   ` <jeelkes8y5.fsf@sykes.suse.de.suse.lists.linux.kernel>
     [not found]     ` <a2sv2s$ge3$1@penguin.transmeta.com.suse.lists.linux.kernel>
     [not found]       ` <20020126034106.F5730@kushida.apsleyroad.org.suse.lists.linux.kernel>
     [not found]         ` <012d01c1a687$faa11120$0201a8c0@HOMER.suse.lists.linux.kernel>
2002-01-26 22:43           ` Andi Kleen
     [not found] <fa.juevf8v.1u7ubb8@ifi.uio.no>
     [not found] ` <fa.h3u09pv.1v2k3bm@ifi.uio.no>
2002-01-26  2:12   ` Dan Maas
2002-01-26  3:45     ` Jamie Lokier
2002-01-26  4:33       ` Alexander Viro
2002-01-26  4:38         ` Andrew Pimlott
2002-01-26  4:59           ` Jamie Lokier
2002-01-26  5:11         ` Jamie Lokier
2002-01-25  2:15 Therien, Guy

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='a2sv2s$ge3$1@penguin.transmeta.com' \
    --to=torvalds@transmeta.com \
    --cc=linux-kernel@vger.kernel.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