Results from my runs

The following table is a, slightly modified, sample of the output of the report script showing relative times. Here is the original output in absolute time and here it is in relative performance. The table presented here is sorted based on the numbers of g++400 (4th column), augmented to briefly describe what each test does, and trimmed to show only regressions. The string "fail" specifies failure to run (i.e., segfault) or failure to compile.


All tests were compiled with -O3


sys1: cpu family 15,model 2, Intel(R) Xeon(TM) CPU 2.60GHz

                  g++295      g++400      g++401 g++401_stlp g++410_0723 g++410_0723_stlp 
Ratios relative to g++295 (stars signify regressions)

==== Store and extract bit fields (pr22563 in gcc bugzilla)
sys1 H000007        1.00        7.17*       7.42*       7.22*       6.96*            6.56* 

==== S* Fill a buffer using different levels of abstraction
sys1 S000005j       1.00        5.62*       5.68*       5.42*       5.50*            5.59* 
sys1 S000005a       1.00        5.51*       5.39*       5.46*       5.49*            5.50* 
sys1 S000005b       1.00        5.47*       5.45*       5.49*       5.45*            5.58* 
sys1 S000005d       1.00        5.39*       5.53*       5.45*       5.49*            5.49* 
sys1 S000005l       1.00        5.38*       5.41*       5.30*       0.99             0.99  
sys1 S000005i       1.00        5.33*       5.11*       5.36*       5.47*            5.39* 
sys1 S000005h       1.00        5.27*       5.44*       5.40*       5.57*            5.61* 
sys1 S000005g       1.00        5.05*       5.15*       5.14*       5.24*            5.38* 

==== Procedure call with 10 parameters of type "some class"
sys1 P000012        1.00        3.55*       3.60*       3.46*       3.25*            3.96* 

==== Exceptions
sys1 E000001        1.00        3.24*       fail        fail        fail             fail  

==== Procedure call with 20 parameters of type "some class"
sys1 P000013        1.00        3.11*       3.12*       2.96*       2.96*            2.93* 

==== Arithmetics with complex numbers (OOP style)
sys1 S000004b       1.00        2.61*       2.66*       2.61*       2.46*            2.47* 

==== I/O
sys1 G000004        1.00        2.58*       2.17*       2.07*       2.09*            2.19* 

==== Very few and simple arithmetic operations
sys1 O000010b       1.00        2.45*       2.19*       2.01*       2.02*            1.99* 

==== Math (Moore-Penrose Passive Ranging Simulation)
sys1 B000013        1.00        2.29*       2.31*       2.49*       2.84*            2.84* 

==== E* Exceptions
sys1 E000003        1.00        1.69*       fail        fail        fail             fail  
sys1 E000004        1.00        1.64*       fail        fail        fail             fail  
sys1 E000007        1.00        1.57*       fail        fail        fail             fail  

==== Heavy recursion (dead cerr)
sys1 A000094a       1.00        1.51*       1.40*       1.53*       0.90             0.90  

==== Exceptions
sys1 E000002        1.00        1.37*       fail        fail        fail             fail  

==== Very few and simple arithmetic operations
sys1 O000008b       1.00        1.36*       1.36*       0.91        1.34*            0.95  

==== I/O
sys1 G000001        1.00        1.32*       1.35*       1.30*       1.33*            1.32* 

==== Allocate and free a dynamic array on the stack
sys1 D000005        1.00        1.29*       1.87*       1.02*       2.13*            1.26* 

==== Procedure call with 10 parameters of type "int"
sys1 P000010        1.00        1.24*       1.08*       0.94        1.42*            1.23* 

==== Switch statement
sys1 F000004        1.00        1.23*       0.98        0.98        0.98             1.00* 

==== Matrix multiply
sys1 A000094d       1.00        1.21*       1.22*       1.21*       1.31*            1.31* 

==== Virtual functions
sys1 F000008        1.00        1.20*       1.20*       1.20*       1.19*            1.18* 

==== I/O
sys1 G000007        1.00        1.19*       1.21*       1.77*       1.22*            1.66* 

==== Very few and simple arithmetic operations
sys1 O000011a       1.00        1.18*       1.13*       1.13*       0.95             0.95  

==== Very few and simple arithmetic operations
sys1 O000011b       1.00        1.14*       1.14*       1.07*       1.09*            1.09* 

==== Procedure call with 20 parameters of type "int"
sys1 P000011        1.00        1.12*       1.02*       1.30*       1.81*            1.21* 

==== Quicksort implementation
sys1 A000094g       1.00        1.10*       1.10*       1.10*       1.18*            1.18* 





Back to Benchmarking gcc with bench++.