Thread: Re: [PORTS] [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
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 #
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
> 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
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