This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
EGCS-971016: i686 Linux vs. SparcULTRA Solaris
- To: egcs at cygnus dot com
- Subject: EGCS-971016: i686 Linux vs. SparcULTRA Solaris
- From: Fred Richardson <frichard at bbn dot com>
- Date: Thu, 16 Oct 1997 23:27:00 -0400
- Reply-to: frichard at bbn dot com
I've run a quick benchmark on a program I've been debugging for a
while. It's very C++'ified and makes heavy use of the STL. It also
does a lot of floating point. Here are some run-time stats when the
input parameters are the same on both machines:
Solaris2.5 UltraSPARC 170 (192 MB RAM, 830 MB VIRTUAL):
TIME: 557.43s
SIZE: 190832K
Linux2.0 i686 (386 MB RAM, 1.04 GB VIRTUAL):
TIME: 359.37s
SIZE: 138012K
On both architectures, EGCS was built with
--with-gnu-as --with-gnu-ld --enable-shared --enable-haifa
The flags used for compiling on the i686 were:
-m486 -funsigned-char -fno-exceptions -O6 -finline-functions
-ffast-math -fomit-frame-pointer -funroll-loops
The flags used for compiling on the Ultra were:
-mcpu=ultrasparc -funsigned-char -fno-exceptions -O6
-finline-functions -ffast-math -fomit-frame-pointer -funroll-loops
This seems like a remarkable difference. I find the allocation
differences really suprising. But I can't say that I have any idea
of what's going on. I'm hoping someone else will find this data-
point enlightening ;)
-Fred