[GHC] #8199: Get rid of HEAP_ALLOCED

GHC ghc-devs at haskell.org
Thu Apr 10 12:01:37 UTC 2014


#8199: Get rid of HEAP_ALLOCED
----------------------------+----------------------------------------------
        Reporter:  ezyang   |            Owner:  ezyang
            Type:  feature  |           Status:  new
  request                   |        Milestone:  7.10.1
        Priority:  normal   |          Version:  7.7
       Component:           |         Keywords:
  Compiler                  |     Architecture:  Unknown/Multiple
      Resolution:           |       Difficulty:  Project (more than a week)
Operating System:           |       Blocked By:  5435
  Unknown/Multiple          |  Related Tickets:
 Type of failure:           |
  None/Unknown              |
       Test Case:           |
        Blocking:           |
----------------------------+----------------------------------------------

Comment (by ezyang):

 I've been keeping an eye on the performance numbers, and this patch to the
 compiler results in a modest bump in some of the stats that we are testing
 on:

 {{{
 =====> T3294(normal) 1380 of 3913 [0, 3, 0]
 cd ./perf/compiler && '/home/hs01/ezyang/ghc-heap-alloced/inplace/bin/ghc-
 stage2' -fforce-recom
 p -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c
 T3294.hs   +RTS -V0 -tT32
 94.comp.stats --machine-readable -RTS  >T3294.comp.stderr 2>&1
 max_bytes_used value is too high:
     Expected    max_bytes_used: 43224080 +/-15%
     Lower bound max_bytes_used: 36740468
     Upper bound max_bytes_used: 49707692
     Actual      max_bytes_used: 54141136
 *** unexpected failure for T3294(normal)
 =====> T4801(normal) 1381 of 3913 [0, 4, 0]
 cd ./perf/compiler && '/home/hs01/ezyang/ghc-heap-alloced/inplace/bin/ghc-
 stage2' -fforce-recom
 p -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c
 T4801.hs   +RTS -V0 -tT48
 01.comp.stats --machine-readable -RTS -static >T4801.comp.stderr 2>&1
 bytes allocated value is too high:
     Expected    bytes allocated: 392409984 +/-10%
     Lower bound bytes allocated: 353168985
     Upper bound bytes allocated: 431650983
     Actual      bytes allocated: 446748968
 *** unexpected failure for T4801(normal)
 =====> T3064(normal) 1382 of 3913 [0, 5, 0]
 cd ./perf/compiler && '/home/hs01/ezyang/ghc-heap-alloced/inplace/bin/ghc-
 stage2' -fforce-recom
 p -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c
 T3064.hs   +RTS -V0 -tT30
 64.comp.stats --machine-readable -RTS  >T3064.comp.stderr 2>&1
 bytes allocated value is too high:
     Expected    bytes allocated: 329795912 +/-5%
     Lower bound bytes allocated: 313306116
     Upper bound bytes allocated: 346285708
     Actual      bytes allocated: 350480296
 *** unexpected failure for T3064(normal)
 =====> T5837(normal) 1391 of 3913 [0, 6, 0]
 cd ./perf/compiler && '/home/hs01/ezyang/ghc-heap-alloced/inplace/bin/ghc-
 stage2' -fforce-recom
 p -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c
 T5837.hs  -ftype-function
 -depth=50 +RTS -V0 -tT5837.comp.stats --machine-readable -RTS
 >T5837.comp.stderr 2>&1
 =====> T6048(optasm) 1392 of 3913 [0, 6, 0]
 cd ./perf/compiler && '/home/hs01/ezyang/ghc-heap-alloced/inplace/bin/ghc-
 stage2' -fforce-recom
 p -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c
 T6048.hs -O -fasm  +RTS -
 V0 -tT6048.comp.stats --machine-readable -RTS  >T6048.comp.stderr 2>&1
 bytes allocated value is too high:
     Expected    bytes allocated: 108578664 +/-10%
     Lower bound bytes allocated:  97720797
     Upper bound bytes allocated: 119436531
     Actual      bytes allocated: 121958160
 }}}

 The bump is understandable, because I need to do some post-processing on
 the C-- stream which induces some extra allocation. I think I might be
 able to optimize it some more but it would be nice to know if it's OK to
 bump these figures up.

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


More information about the ghc-tickets mailing list