Click on the
name of a set of benchmarks in the table above to see the
details. Note
that due to constant improvements to dco
and the introduction of new benchmarks the underlying data might
be
different from the last time you saw it.
Read the text bellow
to understand how
the benchmarks were executed.
Most benchmarks are located
on the web - please write
usIf you
want to obtain the source code of a particular benchmark, or
have any questions about it.
Execution
of
a benchmark
The benchmark is evaluated in the following way:
compile
source code bygcc
and execute
in
most cases we were using gcc version 4.1
or
later.
in most
cases the following list of options was used in addition to
the
processor specific compiler options:
-S
-O3 -fomit-frame-pointer -funroll-all-loops -ffast-math
-mfpmath=sse
use
dco
on the x86 assembly code
produced by gcc
and execute
compare results of execution
the times reported were used to calculate the code
optimization
improvements as following:
1
- (
timeAfterOptimizations/timeBygccAlone )
for
example if compiler generated
code run for .966
seconds and code after dco
optimization run for .535
seconds the improvement of 45%
was reported. Note that improvement calculated in such a way
never
exceed 100%.
Also note that improvement of 50%
means that optimized code is twice as fast as the original.
All benchmarks were executed under Linux operating system. It
was ensured that benchmarks run under the same conditions on the
system with the minimal possible load.
Every benchmark was executed 3 times with the time reported being
neither the best nor the worst.