Thread: Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd ...

Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd ...

From
Bruce Momjian
Date:
Neil Conway wrote:
> On Thu, 2003-10-09 at 09:35, Bruce Momjian wrote:
> > I only put back what was already there --- not sure why others don't use
> > it.  You want it enabled on Linux?
>
> Well, why do we have it enabled at all? If it's to speed compilation, we
> may as well enable it on other platforms where -pipe works, of which
> Linux is one.

My gcc 2.95.3 manual says:

       -pipe  Use pipes rather than temporary files for  communi-
              cation  between  the various stages of compilation.
              This fails to work on some systems where the assem-
              bler cannot read from a pipe; but the GNU assembler
              has no trouble.

so it looks like we can't use it on all platforms without testing.  I
will enable it for linux.  Do people want to test other platforms?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

From
Peter Eisentraut
Date:
Bruce Momjian writes:

> > Well, why do we have it enabled at all? If it's to speed compilation, we
> > may as well enable it on other platforms where -pipe works, of which
> > Linux is one.

On my (Linux) system, no -pipe is always faster than -pipe.

> so it looks like we can't use it on all platforms without testing.  I
> will enable it for linux.  Do people want to test other platforms?

I request the change for Linux to be reverted.

--
Peter Eisentraut   peter_e@gmx.net


Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd

From
Bruce Momjian
Date:
Peter Eisentraut wrote:
> Bruce Momjian writes:
>
> > > Well, why do we have it enabled at all? If it's to speed compilation, we
> > > may as well enable it on other platforms where -pipe works, of which
> > > Linux is one.
>
> On my (Linux) system, no -pipe is always faster than -pipe.
>
> > so it looks like we can't use it on all platforms without testing.  I
> > will enable it for linux.  Do people want to test other platforms?
>
> I request the change for Linux to be reverted.

Done.  Let me test BSD/OS now that you mention it.  :-)

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

From
"Henry B. Hotz"
Date:
At 10:45 AM -0400 10/9/03, Bruce Momjian wrote:
>Neil Conway wrote:
>>  On Thu, 2003-10-09 at 09:35, Bruce Momjian wrote:
>>  > I only put back what was already there --- not sure why others don't use
>>  > it.  You want it enabled on Linux?
>>
>>  Well, why do we have it enabled at all? If it's to speed compilation, we
>>  may as well enable it on other platforms where -pipe works, of which
>>  Linux is one.
>
>My gcc 2.95.3 manual says:
>
>        -pipe  Use pipes rather than temporary files for  communi-
>               cation  between  the various stages of compilation.
>               This fails to work on some systems where the assem-
>               bler cannot read from a pipe; but the GNU assembler
>               has no trouble.
>
>so it looks like we can't use it on all platforms without testing.  I
>will enable it for linux.  Do people want to test other platforms?

It should work on any platform that uses the GNU tools, so that means
*BSD is in the same boat as Linux.

Does it really speed compilation though?  I saw somewhere that it
didn't make much difference and might even hurt sometimes.
--
The opinions expressed in this message are mine,
not those of Caltech, JPL, NASA, or the US Government.
Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu

Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

From
Bruce Momjian
Date:
Henry B. Hotz wrote:
> >>  Well, why do we have it enabled at all? If it's to speed compilation, we
> >>  may as well enable it on other platforms where -pipe works, of which
> >>  Linux is one.
> >
> >My gcc 2.95.3 manual says:
> >
> >        -pipe  Use pipes rather than temporary files for  communi-
> >               cation  between  the various stages of compilation.
> >               This fails to work on some systems where the assem-
> >               bler cannot read from a pipe; but the GNU assembler
> >               has no trouble.
> >
> >so it looks like we can't use it on all platforms without testing.  I
> >will enable it for linux.  Do people want to test other platforms?
>
> It should work on any platform that uses the GNU tools, so that means
> *BSD is in the same boat as Linux.
>
> Does it really speed compilation though?  I saw somewhere that it
> didn't make much difference and might even hurt sometimes.

I saw a 5 second improvement with -pipe on a 150 second full compile of
PostgreSQL.  However, I have a MFS /tmp.  I suppose if I didn't, it
would be slower.  However, the difference is so small as to be
meaningless.  Can someone else test on another *BSD and report?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi

From
Jan Wieck
Date:
Bruce Momjian wrote:

> Henry B. Hotz wrote:
>> >>  Well, why do we have it enabled at all? If it's to speed compilation, we
>> >>  may as well enable it on other platforms where -pipe works, of which
>> >>  Linux is one.
>> >
>> >My gcc 2.95.3 manual says:
>> >
>> >        -pipe  Use pipes rather than temporary files for  communi-
>> >               cation  between  the various stages of compilation.
>> >               This fails to work on some systems where the assem-
>> >               bler cannot read from a pipe; but the GNU assembler
>> >               has no trouble.
>> >
>> >so it looks like we can't use it on all platforms without testing.  I
>> >will enable it for linux.  Do people want to test other platforms?
>>
>> It should work on any platform that uses the GNU tools, so that means
>> *BSD is in the same boat as Linux.
>>
>> Does it really speed compilation though?  I saw somewhere that it
>> didn't make much difference and might even hurt sometimes.
>
> I saw a 5 second improvement with -pipe on a 150 second full compile of
> PostgreSQL.  However, I have a MFS /tmp.  I suppose if I didn't, it
> would be slower.  However, the difference is so small as to be
> meaningless.  Can someone else test on another *BSD and report?
>

Also, IIRC you have a dual processor box. In that case using -pipe helps
to utilize 2 CPU's (not much though), whereas on a single CPU system it
forces extra context switches that aren't necessary when running the
stages sequential.


Jan

--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #


Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd ...

From
Philip Yarra
Date:
On Fri, 10 Oct 2003 12:45 am, Bruce Momjian wrote:
> My gcc 2.95.3 manual says:
>
>        -pipe  Use pipes rather than temporary files for  communi-
> [snip]
> so it looks like we can't use it on all platforms without testing.  I
> will enable it for linux.  Do people want to test other platforms?

I saw your message that it was disabled for all builds (I assume you meant
"all", not "all BSDs"), but for the sake of completeness:

$ uname -a
OSF1 hostname V4.0 1229 alpha
$ cc -pipe main.c
ld:
-pipe: Unknown flag
ld: Usage: ld [options] file [...]
$ gcc -pipe main.c
as: Error: no source, object or ucode file specified
main.c:46: output pipe has been closed

Regards, Philip Yarra.