This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Skipping assembler when producing slim LTO files


> On Wed, Sep 24, 2014 at 11:47 PM, Ian Lance Taylor wrote:
> > On Wed, Sep 24, 2014 at 10:04 AM, Steven Bosscher wrote:
> >> Are you using -pipe? AFAIR this still isn't the default, even on
> >> GNU/Linux, but it is typically a lot faster than without.
> >
> > Is that true even when TMPDIR is on a ram disk?  There's no obvious
> > reason that it should be true in a parallel build.  Using -pipe
> > effectively constrains communication between the compiler and the
> > assembler to work in PIPE_BUF blocks.  Using TMPDIR introduces no such
> > constraints, and in a big program a parallel build should obscure the
> > fact that the compiler and assembler are serialized for each
> > individual compilation unit.
> 
> I've done my most recent timings on a machine that has /dev/md3
> mounted on /tmp. That's gcc110 on the compile farm. With/without -pipe
> made a significant difference.
> 
> If TMPDIR is a tmpfs or other kind of ram disk, I suppose the benefits
> would be less (to the point of vanishing). Unfortunately I can't test
> it...
OK, I tried it on my hello world benchmark with tmpfs and -fpipe really seems
like a small loss. I wonder if we can work out better defaults that works for
most of people.  I use tmpfs as I am worried about my notebook ssd still
being alive and well in 3 years, but it is still far from mainstream.

Honza


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]