[GHC] #10397: Compiler performance regression 7.6 -> 7.8 in elimCommonBlocks

GHC ghc-devs at haskell.org
Fri May 15 22:56:17 UTC 2015


#10397: Compiler performance regression 7.6 -> 7.8 in elimCommonBlocks
-------------------------------------+-------------------------------------
        Reporter:  TobyGoodwin       |                   Owner:
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Compiler          |                 Version:  7.8.4
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |  performance
 Type of failure:  None/Unknown      |            Architecture:
      Blocked By:                    |  Unknown/Multiple
 Related Tickets:                    |               Test Case:  see ticket
                                     |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by nomeata):

 Despite the rule that one should set up a proper benchmark first, and then
 start hacking, I am now validating a patch that groups the blocks not only
 by hash, but also by the list of successor labels. These should be equal
 for all equal blocks, so we do not lose anything, but this should also
 give much smaller lists to search through linearly, and they can be
 updated with a new substitution without traversing the whole heap.

 I can probably report if that helps tomorrow.

 There are more way to improve the code (e.g. not repeatedly building this
 map, but rather working with one), but before I do that I really should
 get some benchmarks for this issue :-)

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10397#comment:7>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list