On 22/02/2010 12:34, Simon Marlow wrote:
I'm currently running some benchmarks to see how much impact turning off
TNTC has on the -fasm backend.
Here are the results on x86-64/Linux:
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed
--------------------------------------------------------------------------------
anna +8.9% +0.0% 0.16 0.17
ansi +5.9% +0.0% 0.00 0.00
atom +6.1% +0.0% +2.5% +1.5%
awards +5.8% +0.0% 0.00 0.00
banner +4.7% +0.0% 0.00 0.00
bernouilli +5.8% +0.0% +0.5% +0.0%
boyer +5.9% +0.0% 0.06 0.07
boyer2 +5.6% +0.0% 0.01 0.01
bspt +7.2% +0.0% 0.02 0.02
cacheprof +7.1% +0.0% +8.5% +8.6%
calendar +5.9% +0.0% 0.00 0.00
cichelli +5.7% -0.0% 0.15 0.16
circsim +6.3% +0.0% +2.1% +1.7%
clausify +5.9% +0.0% 0.06 0.06
comp_lab_zift +6.2% +0.0% +6.7% +6.5%
compress +6.1% +0.0% +11.9% +12.9%
compress2 +6.1% +0.0% +1.8% +0.0%
constraints +6.2% +0.0% +2.9% +3.0%
cryptarithm1 +5.3% +0.0% +12.8% +12.8%
cryptarithm2 +5.6% +0.0% 0.02 0.02
cse +5.4% +0.0% 0.00 0.00
eliza +4.9% +0.0% 0.00 0.00
event +5.9% +0.0% +2.8% +1.9%
exp3_8 +5.8% +0.0% +3.7% +0.0%
expert +5.6% +0.0% 0.00 0.00
fem +7.3% +0.0% 0.03 0.04
fft +6.2% +0.0% 0.06 0.06
fft2 +6.5% +0.0% 0.12 0.13
fibheaps +5.9% +0.0% 0.05 0.05
fish +5.4% +0.0% 0.03 0.03
fluid +8.1% +0.0% 0.01 0.01
fulsom +7.5% +0.0% +5.9% +6.1%
gamteb +6.5% -0.0% 0.10 0.10
gcd +5.8% +0.0% 0.05 0.05
gen_regexps +5.5% +0.0% 0.00 0.00
genfft +5.8% +0.0% 0.05 0.05
gg +6.9% +0.0% 0.02 0.02
grep +6.2% +0.0% 0.00 0.00
hidden +7.5% +0.0% +14.8% +13.8%
hpg +7.0% +0.0% +3.3% +2.7%
ida +6.0% +0.0% 0.17 0.18
infer +6.7% +0.0% 0.08 0.10
integer +5.8% +0.0% +2.8% +3.0%
integrate +6.2% +0.0% +5.8% +4.6%
knights +6.2% +0.0% 0.01 0.01
lcss +5.9% +0.0% +2.6% +0.3%
life +5.4% +0.0% +4.9% +4.3%
lift +6.2% +0.0% 0.00 0.00
listcompr +5.3% +0.0% 0.13 0.15
listcopy +5.3% +0.0% 0.14 0.16
maillist +5.6% -0.0% 0.09 0.13
mandel +6.2% +0.0% 0.10 0.11
mandel2 +5.3% +0.0% 0.01 0.01
minimax +5.8% +0.0% 0.00 0.01
mkhprog +5.8% +0.0% 0.00 0.00
multiplier +6.1% +0.0% 0.20 0.20
nucleic2 +5.6% +0.0% 0.11 0.11
para +6.1% +0.0% +7.4% +6.6%
paraffins +5.9% +0.0% 0.19 +0.0%
parser +6.7% +0.0% 0.05 0.05
parstof +6.4% +0.0% 0.00 0.01
pic +6.7% +0.0% 0.02 0.02
power +6.1% +0.0% +1.5% +1.8%
pretty +6.1% +0.0% 0.00 0.00
primes +5.8% +0.0% 0.10 0.11
primetest +6.0% +0.0% +0.0% +0.0%
prolog +5.7% +0.0% 0.00 0.00
puzzle +5.6% +0.0% +5.2% +4.2%
queens +5.7% +0.0% 0.03 0.03
reptile +6.6% +0.0% 0.02 0.02
rewrite +6.3% +0.0% 0.02 0.02
rfib +6.1% +0.0% 0.03 0.03
rsa +5.9% +0.0% 0.05 0.06
scc +5.2% +0.0% 0.00 0.00
sched +5.9% +0.0% 0.03 0.03
scs +7.5% +0.0% +3.6% +3.5%
simple +8.4% -0.0% +6.3% +5.4%
solid +6.2% +0.0% +0.9% -1.7%
sorting +5.6% +0.0% 0.00 0.00
sphere +6.7% +0.0% 0.13 0.14
symalg +7.1% +0.0% 0.02 0.03
tak +5.7% +0.0% 0.02 0.02
transform +6.6% +0.0% +5.8% +7.5%
treejoin +5.1% +0.0% +0.0% +1.3%
typecheck +6.0% +0.0% +16.9% +13.5%
veritas +8.3% +0.0% 0.00 0.00
wang +6.2% +0.0% 0.16 0.18
wave4main +6.0% +0.0% +7.8% +7.9%
wheel-sieve1 +5.8% +0.0% +2.5% +2.9%
wheel-sieve2 +5.8% +0.0% -0.6% -0.5%
x2n1 +6.3% +0.0% 0.03 0.03
--------------------------------------------------------------------------------
Min +4.7% -0.0% -0.6% -1.7%
Max +8.9% +0.0% +16.9% +13.8%
Geometric Mean +6.1% -0.0% +4.9% +4.2%
So, nofib programs are on average 4-5% slower, with a 6% increase in
binary sizes (this is with -split-objs).
What's interesting is that there are some outliers here: programs that
go 12-17% slower without TNTC. Looking at David's thesis the results
are quite different. Perhaps it is processor dependent?
I have to admit, the results I'm getting are what I would expect, so its
conceivable that some subconscious experimental bias has crept in
somewhere :-)
This is an Intel Xeon E5320, 1.8GHz. I'll try to get some measurements
on our 32-bit box too.
Cheers,
Simon
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc