[GHC] #7679: Regression in -fregs-graph performance

GHC cvs-ghc at haskell.org
Mon Feb 11 09:22:57 CET 2013


#7679: Regression in -fregs-graph performance
---------------------------------+------------------------------------------
    Reporter:  simonmar          |       Owner:                         
        Type:  bug               |      Status:  new                    
    Priority:  high              |   Milestone:  7.8.1                  
   Component:  Compiler (NCG)    |     Version:  7.6.2                  
    Keywords:                    |          Os:  Unknown/Multiple       
Architecture:  Unknown/Multiple  |     Failure:  Runtime performance bug
  Difficulty:  Unknown           |    Testcase:                         
   Blockedby:                    |    Blocking:                         
     Related:  #7192             |  
---------------------------------+------------------------------------------
 Likely due to a bad interaction with the new code generator, see #7192.

 `-fregs-graph` used to be on by default with `-O2`, but is currently off
 due to this issue.

 Results courtesy of @tibbe:

 {{{
 HEAD vs HEAD with -fregs-graph:

 --------------------------------------------------------------------------------
         Program           Size    Allocs   Runtime   Elapsed  TotalMem
 --------------------------------------------------------------------------------
            anna          +0.1%     +0.0%      0.08      0.08     +0.0%
            ansi          +0.0%     +0.0%      0.00      0.00     +0.0%
            atom          +0.0%     +0.0%     +0.0%     -0.8%     +0.0%
          awards          -0.0%     +0.0%      0.00      0.00     +0.0%
          banner          -0.0%     +0.0%      0.00      0.00     +0.0%
      bernouilli          +0.0%     +0.0%      0.12      0.12     +0.0%
    binary-trees          +0.0%     +0.0%     +0.0%     +0.0%     +0.0%
           boyer          -0.0%     +0.0%      0.04      0.04     +0.0%
          boyer2          -0.0%     +0.0%      0.01      0.01     +0.0%
            bspt          -0.0%     +0.0%      0.02      0.02     +0.0%
       cacheprof          +0.0%     +0.0%     -3.1%     -3.1%     +0.0%
        calendar          -0.0%     +0.0%      0.00      0.00     +0.0%
        cichelli          +0.0%     +0.0%      0.05      0.05     +3.0%
         circsim          +0.0%     +0.0%     -0.3%     -0.3%     +0.0%
        clausify          -0.0%     +0.0%      0.03      0.03     +0.0%
   comp_lab_zift          -0.0%     +0.0%      0.14      0.14     +0.0%
        compress          +0.0%     +0.0%      0.11      0.11     +0.0%
       compress2          +0.0%     +0.0%      0.14      0.14     +0.0%
     constraints          +0.0%     +0.0%     -1.4%     -1.4%     +0.0%
    cryptarithm1          +0.0%     +0.0%     +1.6%     +1.0%     +0.0%
    cryptarithm2          +0.0%     +0.0%      0.01      0.01     +0.0%
             cse          +0.0%     +0.0%      0.00      0.00     +0.0%
           eliza          -0.0%     +0.0%      0.00      0.00     +0.0%
           event          +0.0%     +0.0%      0.10      0.10     +0.0%
          exp3_8          +0.0%     +0.0%      0.14      0.14     +0.0%
          expert          +0.0%     +0.0%      0.00      0.00     +0.0%
  fannkuch-redux          +0.0%     +0.0%    +10.6%    +10.4%     +0.0%
           fasta          -0.0%     +0.0%     -0.6%     -0.6%     +0.0%
             fem          +0.0%     +0.0%      0.03      0.03     +0.0%
             fft          -0.0%     +0.0%      0.03      0.03     +0.0%
            fft2          +0.0%     +0.0%      0.04      0.04     +0.0%
        fibheaps          -0.0%     +0.0%      0.03      0.03     +0.0%
            fish          +0.0%     +0.0%      0.01      0.01     +0.0%
           fluid          +0.0%     +0.0%      0.01      0.01     +0.0%
          fulsom          +0.1%     +0.0%     -5.9%     -5.9%     -5.3%
          gamteb          +0.0%     +0.0%      0.04      0.04     +0.0%
             gcd          +0.0%     +0.0%      0.03      0.03     +0.0%
     gen_regexps          +0.0%     +0.0%      0.00      0.00     +0.0%
          genfft          +0.0%     +0.0%      0.03      0.03     +0.0%
              gg          +0.0%     +0.0%      0.02      0.02     +0.0%
            grep          +0.1%     +0.0%      0.00      0.00     +0.0%
          hidden          +0.0%     +0.0%     +3.4%     +2.7%     +0.0%
             hpg          +0.0%     +0.0%      0.10      0.10     +0.0%
             ida          -0.0%     +0.0%      0.06      0.06     +0.0%
           infer          +0.0%     +0.0%      0.05      0.05     +0.0%
         integer          -0.0%     +0.0%     +3.0%     +2.9%     +0.0%
       integrate          +0.0%     +0.0%      0.13      0.13     +0.0%
    k-nucleotide          +0.4%     +0.0%     +3.4%     +3.5%     +0.0%
           kahan          +0.0%     +0.0%      0.18      0.18     +0.0%
         knights          -0.1%     +0.0%      0.01      0.01     +0.0%
            lcss          +0.0%     +0.0%     +0.7%     +0.7%     +0.0%
            life          -0.0%     +0.0%      0.16      0.16     +0.0%
            lift          +0.0%     +0.0%      0.00      0.00     +0.0%
       listcompr          -0.0%     +0.0%      0.06      0.06     +0.0%
        listcopy          -0.0%     +0.0%      0.06      0.06     +0.0%
        maillist          -0.0%     +0.0%      0.04      0.04    -11.2%
          mandel          +0.0%     +0.0%      0.05      0.05     +0.0%
         mandel2          -0.0%     +0.0%      0.00      0.00     +0.0%
         minimax          +0.0%     +0.0%      0.00      0.00     +0.0%
         mkhprog          +0.0%     +0.0%      0.00      0.00     +0.0%
      multiplier          -0.0%     +0.0%      0.08      0.08     +0.0%
          n-body          -0.0%     +0.0%    +28.2%    +28.2%     +0.0%
        nucleic2          +0.0%     +0.0%      0.05      0.05     +0.0%
            para          -0.1%     +0.0%     +1.0%     +1.0%     +0.0%
       paraffins          -0.0%     +0.0%      0.08      0.08     +0.0%
          parser          +0.0%     +0.0%      0.03      0.03     +0.0%
         parstof          -0.0%     +0.0%      0.00      0.00     +0.0%
             pic          -0.0%     +0.0%      0.00      0.00     +0.0%
        pidigits          -0.0%     +0.0%     -0.6%     +0.0%     +0.0%
           power          +0.0%     +0.0%     +1.9%     +1.9%     +0.0%
          pretty          +0.0%     +0.0%      0.00      0.00     +0.0%
          primes          -0.0%     +0.0%      0.05      0.05     +0.0%
       primetest          -0.0%     +0.0%      0.07      0.07     +0.0%
          prolog          +0.0%     +0.0%      0.00      0.00     +0.0%
          puzzle          -0.0%     +0.0%      0.10      0.10     +0.0%
          queens          +0.0%     +0.0%      0.02      0.02     +0.0%
         reptile          +0.0%     +0.0%      0.02      0.02     +0.0%
 reverse-complem          -0.0%     +0.0%      0.08      0.08     +0.0%
         rewrite          +0.0%     +0.0%      0.02      0.02     +0.0%
            rfib          +0.0%     +0.0%      0.02      0.02     +0.0%
             rsa          +0.0%     +0.0%      0.03      0.03     +0.0%
             scc          -0.0%     +0.0%      0.00      0.00     +0.0%
           sched          -0.0%     +0.0%      0.02      0.02     +0.0%
             scs          -0.0%     +0.0%     -1.1%     -0.5%     +0.0%
          simple          -0.1%     +0.0%      0.16      0.16     +0.0%
           solid          -0.0%     +0.0%      0.10      0.10     +0.0%
         sorting          -0.0%     +0.0%      0.00      0.00     +0.0%
   spectral-norm          -0.0%     +0.0%     +0.0%     +0.0%     +0.0%
          sphere          +0.1%     +0.0%      0.03      0.03     +0.0%
          symalg          -0.0%     +0.0%      0.01      0.01     +0.0%
             tak          +0.0%     +0.0%      0.01      0.01     +0.0%
       transform          -0.0%     +0.0%     +0.0%     +0.0%     +0.0%
        treejoin          +0.0%     +0.0%      0.15      0.15     +0.0%
       typecheck          +0.0%     +0.0%      0.15      0.15     +0.0%
         veritas          +0.1%     +0.0%      0.00      0.00     +0.0%
            wang          +0.0%     +0.0%      0.08      0.08     +0.0%
       wave4main          +0.0%     +0.0%      0.19      0.19     +0.0%
    wheel-sieve1          -0.0%     +0.0%     -0.8%     -0.8%     +0.0%
    wheel-sieve2          -0.0%     +0.0%      0.13      0.13     +0.0%
            x2n1          -0.0%     +0.0%      0.01      0.01     +0.0%
 --------------------------------------------------------------------------------
             Min          -0.1%     +0.0%     -5.9%     -5.9%    -11.2%
             Max          +0.4%     +0.0%    +28.2%    +28.2%     +3.0%
  Geometric Mean          +0.0%     -0.0%     +1.7%     +1.7%     -0.1%
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7679>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the ghc-tickets mailing list