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

Reply via email to