EGCS-971016: i686 Linux vs. SparcULTRA Solaris
Fred Richardson
frichard@bbn.com
Thu Oct 16 21:04:00 GMT 1997
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
More information about the Gcc
mailing list