pgsql-server/src/template bsdi freebsd netbsd ...

Started by Nonameover 22 years ago15 messages
#1Noname
momjian@svr1.postgresql.org

CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: momjian@svr1.postgresql.org 03/10/09 01:34:02

Modified files:
src/template : bsdi freebsd netbsd openbsd qnx4

Log message:
Re-add -pipe compile flags for bsd's.

#2Neil Conway
neilc@samurai.com
In reply to: Noname (#1)
Re: pgsql-server/src/template bsdi freebsd netbsd ...

On Thu, 2003-10-09 at 00:34, Bruce Momjian wrote:

Re-add -pipe compile flags for bsd's.

Is there a particular reason this flag is used for these platforms?

(For one thing, -pipe certainly works with GCC on Linux.)

-Neil

#3Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Neil Conway (#2)
Re: pgsql-server/src/template bsdi freebsd netbsd ...

Neil Conway wrote:

On Thu, 2003-10-09 at 00:34, Bruce Momjian wrote:

Re-add -pipe compile flags for bsd's.

Is there a particular reason this flag is used for these platforms?

(For one thing, -pipe certainly works with GCC on Linux.)

I only put back what was already there --- not sure why others don't use
it. You want it enabled on Linux?

-- 
  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
#4Neil Conway
neilc@samurai.com
In reply to: Bruce Momjian (#3)
Re: pgsql-server/src/template bsdi freebsd netbsd ...

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.

-Neil

#5Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Neil Conway (#4)
Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd ...

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
#6Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#5)
Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

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

#7Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Peter Eisentraut (#6)
Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd

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
#8Henry B. Hotz
hotz@jpl.nasa.gov
In reply to: Bruce Momjian (#5)
Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

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

#9Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Henry B. Hotz (#8)
Re: [COMMITTERS] pgsql-server/src/template bsdi freebsd

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
#10Jan Wieck
JanWieck@Yahoo.com
In reply to: Bruce Momjian (#9)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi

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 #

#11Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Jan Wieck (#10)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi

Jan Wieck wrote:

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.

Oh, OK. I am on a dual, so maybe that's why I see an improvement. If I
can get another BSD guy to test this, I can remove the pipe for all the
BSD's.

-- 
  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
#12Sean Chittenden
sean@chittenden.org
In reply to: Bruce Momjian (#11)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi

Oh, OK. I am on a dual, so maybe that's why I see an improvement.
If I can get another BSD guy to test this, I can remove the pipe for
all the BSD's.

When benchmarking FreeBSD via worldstone, -pipe makes a difference
(how much remains a debate). Since PostgreSQL's compile is small
enough, it's likely that many folks won't notice any appreciable
difference (though it does add up). Here's a thread worth reading
from the gcc guys:

http://gcc.gnu.org/ml/gcc-bugs/2000-10/msg00138.html

-sc

--
Sean Chittenden

#13Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Sean Chittenden (#12)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi

Sean Chittenden wrote:

Oh, OK. I am on a dual, so maybe that's why I see an improvement.
If I can get another BSD guy to test this, I can remove the pipe for
all the BSD's.

When benchmarking FreeBSD via worldstone, -pipe makes a difference
(how much remains a debate). Since PostgreSQL's compile is small
enough, it's likely that many folks won't notice any appreciable
difference (though it does add up). Here's a thread worth reading
from the gcc guys:

http://gcc.gnu.org/ml/gcc-bugs/2000-10/msg00138.html

Thanks. "-pipe" removed from all compiles.

-- 
  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
#14Philip Yarra
philip@utiba.com
In reply to: Bruce Momjian (#5)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd ...

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.

#15Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Philip Yarra (#14)
Re: [HACKERS] [COMMITTERS] pgsql-server/src/template bsdi freebsd netbsd

Philip Yarra wrote:

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

Right. It was only enabled on BSD's in the code, so I just removed
that. It didn't exist in any other builds.

-- 
  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