This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

EGCS-971016: i686 Linux vs. SparcULTRA Solaris


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]