9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] ports from GPL
Date: Sat, 18 Mar 2006 08:03:22 -0600	[thread overview]
Message-ID: <3d6e49d9bcfa43f526b52309c7dfa7ee@quanstro.net> (raw)

hey, i don't think that old assumptions about inline are the
reason that gcc is slow and large.

the major reason is design. gcc takes many passes over the data,
transforming it first into a parse tree, then into rtl and then
optimizes the rtl. (i think they do strength reduction, &c
in rtl, using some arch-specific tables to compute costs.)

the problem is that rtl must handle every arch and every
language that gcc supports, making it slow and cumbersome.

actually i think rtl ends up doing this: (quoted from tom duff's
sillysort)

/*
 * The time complexity of this thing is O(n^(a log n))
 * for some constant a. This is a multiply and surrender
 * algorithm: one that continues multiplying subproblems
 * as long as possible until their solution can no longer
 * be postponed.
 */

- erik

On Sat Mar 18 07:32:05 CST 2006, brantley@coraid.com wrote:
> > their major mistake, apart from not thinking before coding, is that all
> > of those stupid inlines blow your cache and ken is clever.
>
> This is a big deal.  Assumptions learned early in our careers had very
> hard to change.  A few years back I wrote a DES implementaiton that on
> 0 loops.  Ran like a dog because it pretty much filled the cache.  Hard
> to stop thinking that memory isn't flat.
>


             reply	other threads:[~2006-03-18 14:03 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-18 14:03 erik quanstrom [this message]
  -- strict thread matches above, loose matches on Subject: below --
2006-03-21  1:56 erik quanstrom
2006-03-21  3:43 ` dmr
2006-03-18 19:01 erik quanstrom
2006-03-18 14:14 erik quanstrom
2006-03-18 18:47 ` Skip Tavakkolian
2006-03-18  2:03 dmr
2006-03-18  6:12 ` Bruce Ellis
2006-03-18  6:24   ` Tim Wiess
2006-03-18  6:36     ` Bruce Ellis
2006-03-18 13:31       ` Brantley Coile
2006-03-18 13:30   ` Brantley Coile
2006-03-18 16:28 ` George Michaelson
2006-03-18 23:13   ` Brantley Coile
2006-03-19  1:03     ` geoff
2006-03-17 16:17 erik quanstrom
2006-03-17 15:25 erik quanstrom
2006-03-17 15:21 Mike Haertel
2006-03-17 15:12 erik quanstrom
2006-03-17 14:11 erik quanstrom
2006-03-17 14:22 ` Brantley Coile
2006-03-17 15:40 ` Ronald G Minnich
2006-03-18  0:39 ` geoff
2006-03-18  0:59   ` erik quanstrom
2006-03-18  1:16   ` Lyndon Nerenberg
2006-03-18  1:18     ` George Michaelson
2006-03-19 14:43   ` David Leimbach
2006-03-20  2:18     ` erik quanstrom
2006-03-20  3:39       ` uriel
2006-03-20 11:50         ` erik quanstrom
2006-03-20 20:00       ` Aharon Robbins
2006-03-21  2:41         ` erik quanstrom
2006-03-20 19:50     ` Aharon Robbins
2006-03-20 19:59       ` George Michaelson
2006-03-21 23:43       ` Jack Johnson
2006-03-16  8:11 Fernan Bolando
2006-03-16 13:03 ` Anthony Sorace
2006-03-16 16:50   ` Jack Johnson
2006-03-17  1:05   ` erik quanstrom
2006-03-17 11:33     ` Brantley Coile
2006-03-17 12:03       ` Axel Belinfante
2006-03-17 15:39       ` Ronald G Minnich
2006-03-20  3:44         ` Dave Eckhardt
2006-03-20  3:50           ` Skip Tavakkolian
2006-03-20  4:11             ` Russ Cox
2006-03-20  8:13           ` Charles Forsyth
2006-03-24  5:29         ` ems
2006-03-24  7:49           ` Bruce Ellis
2006-03-24 17:14           ` Ronald G Minnich
2006-03-24 17:34             ` erik quanstrom
2006-03-24 18:11             ` Wes Kussmaul
2006-03-24 18:09               ` Ronald G Minnich
2006-03-24 18:26                 ` Wes Kussmaul
2006-03-26  9:14             ` ems

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=3d6e49d9bcfa43f526b52309c7dfa7ee@quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@cse.psu.edu \
    /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).