9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Ethan Grammatikidis <eekee57@fastmail.fm>
To: 9fans@9fans.net
Subject: Re: [9fans] GNU/Linux/Plan 9 disto
Date: Tue, 12 Jul 2011 14:35:12 +0100	[thread overview]
Message-ID: <20110712143512.50bd0bdb@lahti.ethans.dre.am> (raw)
In-Reply-To: <CAFSF3XNpq2ytoijeoNrdimnnjWyQafre18d89_YbAyoBa8aeCA@mail.gmail.com>

On Tue, 12 Jul 2011 02:10:50 +0200
hiro <23hiro@googlemail.com> wrote:

>  2. compilers still running fastest on fast CPUs

I have a quad core I bought specifically for compiling, that was one of the major tasks the box was going to do as I wanted to get more involved in Source Mage GNU/Linux. It performed admirably, but the vast majority of the compiles were IO bound. The IO in question was all to RAM -- the sources were unpacked to tmpfs and the compilation performed there. I used make -j6; 6 jobs, 2 more than the number of cores, and unless it was compiling Firefox or one or two other very large packages, average core utilization would be around 50%.

I don't know if the opinion stated above comes from C++ compiles or from the insane optimization techniques Gcc is sometimes capable of. I choose my words carefully; I mean to use "insane" there because you can increase compilation time dramatically by demanding more optimization from Gcc, and never notice the difference in desktop use. Even given relatively compute-intensive tasks such as compilation, IO limitation is still very significant as my example above shows.

To my mind, the really scary thing about Gcc is that the less heavyweight optimization paths are less well tested. You don't really have a choice about burning up your CPUs on optimization which is worthless for most code. I got lucky; when I bought my quad core Gcc did not yet have specific optimizations for it at all, so I was able to use the generic x86_64 optimization path. I stopped using Source Mage before that generic path had a chance to bit-rot.

There is yet another thing, and now I'm starting to feel ill relating the troubles. Gcc's optimization can be crap for those programs which most require it! Video transformation requires an algorithm which is actually *slowed* by the optimization attempts of Gcc as well as (iirc) Intel's CC. It can be done right, DEC had a compiler which could optimize it well, but video playback software still relies on assembler code because Gcc doesn't do it right. I'm sure video playback is not the only compute-intensive task in which such an algorithm is used. It doesn't stretch my imagination much to see rendering or even perhaps fluid dynamics having such a problem, and we can fall back to assembler with 8c just as easily as with Gcc.

With all these factors, I don't think it's religious at all to say Gcc is one big pile of shit and -- I'm sorry, hiro, -- to wonder at anyone who wants to use it.



  reply	other threads:[~2011-07-12 13:35 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-11 16:05 rbnsw-plan9
2011-07-11 16:41 ` Jens Staal
2011-07-11 16:59   ` Gorka Guardiola
2011-07-11 19:31     ` Charles Forsyth
2011-07-12  5:59       ` Pavel Zholkover
2011-07-12 15:13         ` [9fans] Plan 9 Go (Was: GNU/Linux/Plan 9 disto) Lucio De Re
2011-07-12 18:35           ` Francisco J Ballesteros
2011-07-13 18:31             ` Lucio De Re
2011-07-13 18:45               ` Lucio De Re
2011-07-14 18:59                 ` stephano zanzin
2011-07-14 20:21                   ` Lucio De Re
2011-07-14 20:35                     ` Iruatã Souza
2011-07-15  2:37                     ` Fazlul Shahriar
2011-07-22  4:40               ` Lucio De Re
2011-07-22 14:37                 ` Ethan Grammatikidis
2011-07-27  2:55                   ` kokamoto
2011-07-12 18:44           ` Skip Tavakkolian
2011-07-12 12:35       ` [9fans] GNU/Linux/Plan 9 disto Ethan Grammatikidis
2011-07-12  5:50     ` Jens Staal
     [not found]   ` <CACm3i_j1dxqY=sfunozAXRY+uhO83BnTodfpWvNb+4rSNouC_g@mail.gmail.c>
2011-07-11 17:43     ` erik quanstrom
2011-07-11 19:29       ` Charles Forsyth
2011-08-21 16:20         ` Enrico Weigelt
2011-08-21 17:27           ` erik quanstrom
2011-08-21 16:16   ` Enrico Weigelt
2011-07-11 17:56 ` hiro
     [not found] ` <CAFSF3XO7ejhGBq5Zqj1oL7UnnPf7naTtwbG56hN4k1fz3koxBw@mail.gmail.c>
2011-07-11 18:12   ` erik quanstrom
2011-07-12  0:10     ` hiro
2011-07-12 13:35       ` Ethan Grammatikidis [this message]
2011-07-12 17:18         ` hiro
2011-07-12 18:09       ` Richard Miller
2011-07-12 19:08         ` Ethan Grammatikidis

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=20110712143512.50bd0bdb@lahti.ethans.dre.am \
    --to=eekee57@fastmail.fm \
    --cc=9fans@9fans.net \
    /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).