From: aburto@nosc.mil (Alfred A. Aburto)
Subject: Latest heapsort.c Results
Organization: Naval Ocean Systems Center, San Diego
Distribution: comp.benchmarks
Date: Fri, 22 Jan 1993 16:43:31 GMT
Expires: Mon, 15 Feb 1993 08:00:00 GMT

-------
Heapsort.c results are included below.

The program (heapsort.c) and latest results (heapsort.tbl) can be 
obtained via anonymous ftp from 'marlin.nosc.mil' in directory 
'pub/aburto'. The 'marlin' host (IP) number is: 128.49.16.4

Please send new results (new machines, compilers, compiler options) to:
aburto@marlin.nosc.mil. I will keep the results up-dated and post
periodically to 'comp.benchmarks'. Any comments or advice or whatever
greatly appreciated too.

Heapsort.c Test Results:
MIPS is relative to unoptimized gcc 2.1 (gcc -DUNIX) instruction count
using assembly output for 80486 (80386 code). The instruction count
is divided by the average runtime (for 1 loop) to obtain the RELATIVE
MIPS rating for memory sizes from 8000 bytes up to 2048000 bytes. These
will not necessarily be like other MIPS results because the instruction
mix and weightings are different. This is just a heap sort test program 
which I have attempted to calibrate to a relative MIPS rating. I suppose
we can call this a 'HeapMIPS' rating ...

PLEASE NOTE: The Sun system results can be quite erratic unless the 
             '-Bstatic'option is used.

Results as of 10 Jan 1993:                                       HIGH
                                                          CPU    HEAP
System                 OS, Compiler               CPU    (MHz)   MIPS  REF
---------------------- ------------------------ -------- ----- ------- ---
HP 9000/730            HP-UX 8.07, cc +OS +O3   PA-RISC   66.    42.09   8
HP 9000/730            HP-UX 8.07, cc +OS       PA-RISC   66.    41.97   8
HP 9000/730            NOTE 001, 4.3 BSD        PA-RISC   66.    41.40   7
HP 9000/730            NOTE 002, 4.3 BSD        PA-RISC   66.    38.06   7
IBM RS6000/550         AIX 3.2, cc -DUNIX -O -Q RISC      42.0   32.86   3
IBM RS6000/550         AIX 3.2, cc -DUNIX -O    RISC      42.0   32.78   3
IBM RS6000/550         AIX 3.2, xlc -DUNIX -O   RISC      42.0   32.73   3
Sun SPARCstation 10/30 NOTE E01,                SPARC     36.0   32.49   8
Sun SPARCstation 10/30 NOTE E02,                SPARC     36.0   31.95   8
IBM RS6000/550         NOTE B01, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B02, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B03, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B04, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B05, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B06, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B07, AIX 3.2        RISC      42.0   30.68   3
IBM RS6000/550         NOTE B08, AIX 3.2        RISC      42.0   30.68   3
HP 9000/730            NOTE B08, HP-UX 8.07     PA-RISC   66.    29.28   8
IBM RS6000/550         NOTE B09, AIX 3.2        RISC      42.0   29.22   3
Sun SPARCstation 10/30 SC1.0,cc-fast-O4-Bstatic SPARC     36.0   26.49   8
HP 9000/730            NOTE B10, HP-UX 8.07     PA-RISC   66.    24.33   8
Sun SPARCstation 10/30 NOTE E03,                SPARC     36.0   22.79   8
Sun SPARCstation 10/30 NOTE E04,                SPARC     36.0   22.76   8
DEC DECstation 5K/240  Ultrix4.2A,cc -DUNIX -O2 R3000     40.0   22.75   9
DEC DECstation 5K/240  Ultrix4.2A,cc -DUNIX -O  R3000     40.0   22.69   9
DEC DECstation 5K/240  Ultrix4.2A,cc -DUNIX -O4 R3000     40.0   22.66  10
DEC DECstation 5K/240  Ultrix4.2A,cc -DUNIX -O3 R3000     40.0   22.60  10
SGI Iris 4D/35         Irix 4.0.5,cc -DUNIX -O3 R3000     36.0   20.87   6
DEC DECstation 5K/240  NOTE B08, Ultrix 4.2A    R3000     40.0   20.84   9
SGI Iris 4D/35         Irix 4.0.5,cc -DUNIX -O2 R3000     36.0   20.48   6
IBM RS6000/550         NOTE B12, AIX 3.2        RISC      42.0   18.97   3
DTK 80486DX            NOTE 003, LINUX 0.99     80486DX   50.0   17.96  11
DTK 80486DX            NOTE 004, LINUX 0.99     80486DX   50.0   17.84  11
Sun SPARCserver 690MP  NOTE C01, SunOS 4.1.2    SPARC     40.0   17.60   2
Sun SPARCserver 690MP  NOTE C02, SunOS 4.1.2    SPARC     40.0   17.55   2
Sun SPARCserver 690MP  NOTE C04, SunOS 4.1.2    SPARC     40.0   17.30   2
Sun SPARCstation 2     SC1.0,cc-fast-O4-Bstatic SPARC     40.0   17.28   8
Sun SPARCstation 2     NOTE C01, SunOS 4.1.2    SPARC     40.0   17.02   2
Sun SPARCstation 2     NOTE C02, SunOS 4.1.2    SPARC     40.0   16.97   2
Sun SPARCstation 2     NOTE C03, SunOS 4.1.2    SPARC     40.0   16.91   2
Sun SPARCstation 2     NOTE C04, SunOS 4.1.2    SPARC     40.0   16.68   2
Sun SPARCstation 2     NOTE C05, SunOS 4.1.2    SPARC     40.0   16.31   2
Sun SPARCstation 2     NOTE C06, SunOS 4.1.2    SPARC     40.0   16.31   2
Sun SPARCstation 2     NOTE C07, SunOS 4.1.2    SPARC     40.0   16.25   2
Sun SPARCserver 690MP  NOTE C08, SunOS 4.1.2    SPARC     40.0   16.17   2
Sun SPARCstation 2     NOTE E04,                SPARC     40.0   15.66   8
Sun SPARCserver 690MP  NOTE C10, SunOS 4.1.2    SPARC     40.0   15.63   2
Sun SPARCstation 2     NOTE C08, SunOS 4.1.2    SPARC     40.0   15.41   2
Sun SPARCstation 2     NOTE E03,                SPARC     40.0   15.32   8
Sun SPARCserver 690MP  NOTE C09, SunOS 4.1.2    SPARC     40.0   15.22   2
SGI Iris 4D/35         Irix 4.0.5,cc -DUNIX -O1 R3000     36.0   14.80   6
Sun SPARCserver 690MP  NOTE C11, SunOS 4.1.2    SPARC     40.0   14.67   2
DEC DECstation 5K/25   Ultrix4.2A,cc -DUNIX -O2 R3000     25.0   14.08  10
DEC DECstation 5K/25   Ultrix4.2A,cc -DUNIX -O3 R3000     25.0   14.07  10
DEC DECstation 5K/25   Ultrix4.2A,cc -DUNIX -O4 R3000     25.0   14.06  10
Sun SPARCstation 2     NOTE C11, SunOS 4.1.2    SPARC     40.0   13.72   2
SGI Iris 4D/35         Irix 4.0.5,cc -DUNIX -O0 R3000     36.0   13.01   6
NeXTstation            gcc 1.93, gcc -O         68040     33.3   12.58  13
Vega 486, 64K cache    NOTE B11, MS DOS 5.0     80486DX   33.3   12.58  12
Vega 486, 64K cache    NOTE B12, MS DOS 5.0     80486DX   33.3   12.58  12
Vega 486, 64K cache    NOTE A01, MS DOS 5.0     80486DX   33.3   12.53   1
Vega 486, 64K cache    NOTE A02, MS DOS 5.0     80486DX   33.3   12.52   1
Vega 486, 64K cache    NOTE A03, MS DOS 5.0     80486DX   33.3   12.51   1
Vega 486, 64K cache    NOTE A04, MS DOS 5.0     80486DX   33.3   12.51   1
Vega 486, 64K cache    NOTE A05, MS DOS 5.0     80486DX   33.3   12.50   1
Vega 486, 64K cache    NOTE A06, MS DOS 5.0     80486DX   33.3   12.49   1
Vega 486, 64K cache    NOTE A07, MS DOS 5.0     80486DX   33.3   12.34   1
Vega 486, 64K cache    NOTE A08, MS DOS 5.0     80486DX   33.3   12.33   1
Vega 486, 64K cache    NOTE A09, MS DOS 5.0     80486DX   33.3   12.15   1
Vega 486, 64K cache    NOTE A10, MS DOS 5.0     80486DX   33.3   12.08   1
Vega 486, 64K cache    NOTE A11, MS DOS 5.0     80486DX   33.3   11.98   1
Vega 486, 64K cache    NOTE A12, MS DOS 5.0     80486DX   33.3   11.96   1
IBM RS6000/550         AIX 3.2, cc -DUNIX       RISC      42.0   11.94   3
Vega 486, 64K cache    NOTE A13, MS DOS 5.0     80486DX   33.3   11.66   1
Vega 486, 64K cache    NOTE A14, MS DOS 5.0     80486DX   33.3   11.66   1
Vega 486, 64K cache    NOTE A15, MS DOS 5.0     80486DX   33.3   11.19   1
Sun SPARCserver 690MP  NOTE C15, SunOS 4.1.2    SPARC     40.0   10.78   2
Sun SPARCserver 690MP  NOTE C14, SunOS 4.1.2    SPARC     40.0   10.57   2
Sun SPARCstation 2     NOTE C13, SunOS 4.1.2    SPARC     40.0   10.56   2
Sun 4/330              NOTE D01, SunOS 4.1.1    SPARC     25.0   10.51   2
Sun SPARCstation 2     NOTE C12, SunOS 4.1.2    SPARC     40.0   10.35   2
Sun 4/330              NOTE D02, SunOS 4.1.1    SPARC     25.0   10.02   2
Amiga A4000            SAS/C 6.0 (opt)          68040     25.0    9.92   5
NeXTstation            gcc 1.93, gcc -O         68040     25.0    9.66  13
Sun SPARCstation 1+    NOTE C01, SunOS 4.1.2    SPARC     25.0    9.64   2
Sun SPARCstation 1+    NOTE C02, SunOS 4.1.2    SPARC     25.0    9.64   2
Sun SPARCstation 1+    NOTE C03, SunOS 4.1.2    SPARC     25.0    9.61   2
Sun SPARCstation 1+    NOTE C04, SunOS 4.1.2    SPARC     25.0    9.53   2
Sun SPARCstation 1+    NOTE C05, SunOS 4.1.2    SPARC     25.0    9.33   2
Sun 4/330              NOTE D03, SunOS 4.1.1    SPARC     25.0    9.32   2
Sun SPARCstation 1+    NOTE C06, SunOS 4.1.2    SPARC     25.0    9.29   2
Sun SPARCstation 2     NOTE E02,                SPARC     40.0    9.28   8
Sun SPARCstation 1+    NOTE C07, SunOS 4.1.2    SPARC     25.0    9.27   2
Sun SPARCstation 1+    NOTE C08, SunOS 4.1.2    SPARC     25.0    9.14   2
Sun 4/330              NOTE D04, SunOS 4.1.1    SPARC     25.0    8.82   2
Sun 4/330              NOTE D05, SunOS 4.1.1    SPARC     25.0    8.77   2
Sun SPARCstation 1+    NOTE C09, SunOS 4.1.2    SPARC     25.0    8.62   2
Sun SPARCstation 1+    NOTE C10, SunOS 4.1.2    SPARC     25.0    8.53   2
Sun SPARCstation 1+    NOTE C11, SunOS 4.1.2    SPARC     25.0    8.24   2
Sun SPARCstation IPC   gcc 2.3.1, gcc -O2       SPARC     25.0    7.98  13
VAX 8650               4.3 BSD,gcc 1.3.7, gcc-O --------  18.0    6.77   3
Sun 4/330              NOTE D06, SunOS 4.1.1    SPARC     25.0    6.53   2
Sun SPARCstation 1+    NOTE C12, SunOS 4.1.2    SPARC     25.0    6.08   2
Sun SPARCstation 1+    NOTE C13, SunOS 4.1.2    SPARC     25.0    6.07   2
Sun SPARCstation 1+    NOTE C14, SunOS 4.1.2    SPARC     25.0    6.00   2
Sun SPARCstation 1+    NOTE C15, SunOS 4.1.2    SPARC     25.0    5.98   2
VAX 8650               4.3 BSD,gcc 1.3.7, gcc   --------  18.0    5.96   3 
Sun SPARCstation 1+    NOTE C04, SunOS 4.1.2    SPARC     25.0    5.62   2
VAX 8650               4.3 BSD, cc -DUNIX -O    --------  18.0    5.59   3
VAX 8650               4.3 BSD, cc -DUNIX       --------  18.0    5.26   3
Sun SPARCstation 2     NOTE C15, SunOS 4.1.2    SPARC     40.0    4.46   2
Sun SPARCstation 2     NOTE C16, SunOS 4.1.2    SPARC     40.0    4.44   2
Sun SPARCstation 2     NOTE C14, SunOS 4.1.2    SPARC     40.0    4.44   2
Sun SPARCstation 1+    NOTE C14, SunOS 4.1.2    SPARC     25.0    3.43   2
Sun 4/330              NOTE D07, SunOS 4.1.1    SPARC     25.0    3.25   2
Sun 4/330              NOTE D08, SunOS 4.1.1    SPARC     25.0    3.13   2
NBI 5/10               4.2 BSD, cc -DUNIX -O    68010     12.0    0.47   4

NOTE:
A01  gcc 2.1, gcc -DUNIX -fexpensive-optimizations
A02  gcc 2.1, gcc -DUNIX 
A03  gcc 2.1, gcc -DUNIX -fstrength-reduce
A04  gcc 2.1, gcc -DUNIX -funroll-loops
A05  gcc 2.1, gcc -DUNIX -finline-functions
A06  gcc 2.1, gcc -DUNIX -funroll-all-loops
A07  gcc 2.1, gcc -DUNIX -m486
A08  gcc 2.1, gcc -DUNIX -m486 -fexpensive-optimizations
A09  gcc 2.1, gcc -DUNIX -m486 -O
A10  gcc 2.1, gcc -DUNIX -m486 -O2
A11  gcc 2.1, gcc -DUNIX -O -fexpensive-optimizations
A12  gcc 2.1, gcc -DUNIX -O
A13  gcc 2.1, gcc -DUNIX -O2 -fexpensive-optimizations
A14  gcc 2.1, gcc -DUNIX -O2
A15  gcc 2.1, gcc -DUNIX -O2 -funroll-loops

B01  gcc 2.2.2, gcc -DUNIX -O9 -finline-functions
B02  gcc 2.2.2, gcc -DUNIX -O9 -funroll-loops
B03  gcc 2.2.2, gcc -DUNIX -O9 -fexpensive-optimizations
B04  gcc 2.2.2, gcc -DUNIX -O9
B05  gcc 2.2.2, gcc -DUNIX -O5
B06  gcc 2.2.2, gcc -DUNIX -O4
B07  gcc 2.2.2, gcc -DUNIX -O3
B08  gcc 2.2.2, gcc -DUNIX -O2
B09  gcc 2.2.2, gcc -DUNIX -O1
B10  gcc 2.2.2, gcc -DUNIX -O
B11  gcc 2.2.2, gcc -DUNIX -fexpensive-optimizations
B12  gcc 2.2.2, gcc -DUNIX

C01  Sun C 2.0.1, cc -DUNIX -fast -O4 -Bstatic -dalign
C02  Sun C 2.0.1, cc -DUNIX -fast -O4 -Bstatic
C03  Sun C 2.0.1, cc -DUNIX -O4 -Bstatic
C04  Sun C 2.0.1, cc -DUNIX -fast -O4
C05  Sun C 2.0.1, cc -DUNIX -O3 -Bstatic
C06  Sun C 2.0.1, cc -DUNIX -fast -Bstatic
C07  Sun C 2.0.1, cc -DUNIX -O2 -Bstatic
C08  Sun C 2.0.1, cc -DUNIX -O4
C09  Sun C 2.0.1, cc -DUNIX -O3
C10  Sun C 2.0.1, cc -DUNIX -fast
C11  Sun C 2.0.1, cc -DUNIX -O2
C12  Sun C 2.0.1, cc -DUNIX -Bstatic
C13  Sun C 2.0.1, cc -DUNIX -O1 -Bstatic
C14  Sun C 2.0.1, cc -DUNIX 
C15  Sun C 2.0.1, cc -DUNIX -O1
C16  Sun C 2.0.1, cc -DUNIX -dalign

D01  cc -DUNIX -O4 -Bstatic
D02  cc -DUNIX -O2 -Bstatic
D03  cc -DUNIX -O2
D04  cc -DUNIX -O4
D05  cc -DUNIX -O3
D06  cc -DUNIX -Bstatic
D07  cc -DUNIX -O1
D08  cc -DUNIX

E01  gcc 2.3.2, gcc -O2 -mv8 -mno-epilogue -static
E02  gcc 2.3.2, gcc -O2 -mv8 -static
E03  gcc 2.3.2, gcc -O2 -static
E04  gcc 2.3.2, gcc -O2 -fno-strength-reduce -static

001  cc 8.71, optimizer 8.07.03, cc -O +DA1.1
002  gcc 2.3, gcc -O2 -mpa-risc-1-1
003  gcc 2.2.2d, gcc -DUNIX -O2
004  gcc 2.2.2d, gcc -DUNIX -O

REF:
1    Al Aburto, aburto@marlin.nosc.mil, 04 Oct 1992
     Using '-O' or '-O2' degrades performance somewhat.
2    Al Aburto, aburto@marlin.nosc.mil, 10 Oct 1992
     The Sun results can be quite erratic unless the '-Bstatic' option
     is used. It appears important to use the '-Bstatic' option.
3    Al Aburto, aburto@marlin.nosc.mil, 10 Oct 1992
4    Dale Lyndon, dale!ucsd!uunet!unbc.edu!lyndon, 16 Oct 1992
5    Roger Uzun, crash!uzun, 31 Oct 1992
6    Andres Kruse, kruse@aritra.desy.de, 03 Dec 1992
7    Jeffrey A Law, law@schirf.cs.utah.edu, 06 Dec 1992
8    Dana Jacobsen, jacobsd@solar.cor2.epa.gov, 11 Dec 1992
9    Gustaf Neumann, neumann@dec4.wu-wien.ac.at, 13 Dec 1992
10   John Hascall, john@iastate.edu, 13 Dec 1992
11   Gustaf Neumann, neumann@dec4.wu-wien.ac.at, 23 Dec 1992
12   Al Aburto, aburto@marlin.nosc.mil, 10 Jan 1993
13   Mike Mellinger, mmellinger@trirex.com, 10 Jan 1993

Al Aburto
aburto@marlin.nosc.mil
-------


Newsgroups: comp.benchmarks