[GHC] #7367: Optimiser / Linker Problem on amd64

GHC cvs-ghc at haskell.org
Fri Apr 12 18:57:53 CEST 2013


#7367: Optimiser / Linker Problem on amd64
-------------------------------+--------------------------------------------
    Reporter:  wurmli          |       Owner:                         
        Type:  bug             |      Status:  new                    
    Priority:  normal          |   Milestone:  7.8.1                  
   Component:  Build System    |     Version:  7.6.1                  
    Keywords:                  |          Os:  Linux                  
Architecture:  x86_64 (amd64)  |     Failure:  Runtime performance bug
  Difficulty:  Unknown         |    Testcase:                         
   Blockedby:                  |    Blocking:                         
     Related:                  |  
-------------------------------+--------------------------------------------
Changes (by igloo):

  * milestone:  => 7.8.1


Comment:

 It looks like the "bytes allocated in the heap" dramatically increased
 between 7.4 and 7.6:
 {{{
 $ ghc-7.4.1 --make -O q -XBangPatterns -threaded -rtsopts
 [1 of 1] Compiling Main             ( q.hs, q.o )
 Linking q ...
 $ time ./q 12 +RTS -N4 -s
 3968050
 Pfannkuchen(12) = 65
           88,592 bytes allocated in the heap
            6,040 bytes copied during GC
           46,928 bytes maximum residency (1 sample(s))
           43,184 bytes maximum slop
                4 MB total memory in use (1 MB lost due to fragmentation)

                                     Tot time (elapsed)  Avg pause  Max
 pause
   Gen  0         0 colls,     0 par    0.00s    0.00s     0.0000s
 0.0000s
   Gen  1         1 colls,     0 par    0.00s    0.00s     0.0002s
 0.0002s

   Parallel GC work balance: -nan (0 / 0, ideal 4)

                         MUT time (elapsed)       GC time  (elapsed)
   Task  0 (worker) :   78.76s    ( 20.00s)       0.00s    (  0.00s)
   Task  1 (worker) :   78.76s    ( 20.00s)       0.00s    (  0.00s)
   Task  2 (bound)  :   78.75s    ( 20.00s)       0.00s    (  0.00s)
   Task  3 (worker) :   78.76s    ( 20.00s)       0.00s    (  0.00s)
   Task  4 (worker) :   78.75s    ( 20.00s)       0.00s    (  0.00s)
   Task  5 (worker) :   78.76s    ( 20.00s)       0.00s    (  0.00s)

   SPARKS: 0 (0 converted, 0 overflowed, 0 dud, 0 GC'd, 0 fizzled)

   INIT    time    0.00s  (  0.00s elapsed)
   MUT     time   78.75s  ( 20.00s elapsed)
   GC      time    0.00s  (  0.00s elapsed)
   EXIT    time    0.00s  (  0.00s elapsed)
   Total   time   78.76s  ( 20.00s elapsed)

   Alloc rate    1,124 bytes per MUT second

   Productivity 100.0% of total user, 393.9% of total elapsed

 gc_alloc_block_sync: 0
 whitehole_spin: 0
 gen[0].sync: 0
 gen[1].sync: 0
 ./q 12 +RTS -N4 -s  78.76s user 0.00s system 393% cpu 19.998 total
 }}}

 {{{
 $ ghc-7.6.2 --make -O q -XBangPatterns -threaded -rtsopts
 [1 of 1] Compiling Main             ( q.hs, q.o )
 Linking q ...
 $ time ./q 12 +RTS -N4 -s
 3968050
 Pfannkuchen(12) = 65
   10,538,123,264 bytes allocated in the heap
          390,688 bytes copied during GC
           46,856 bytes maximum residency (2 sample(s))
           51,448 bytes maximum slop
                3 MB total memory in use (0 MB lost due to fragmentation)

                                     Tot time (elapsed)  Avg pause  Max
 pause
   Gen  0      5843 colls,  5843 par   28.64s    0.38s     0.0001s
 0.0131s
   Gen  1         2 colls,     1 par    0.00s    0.00s     0.0002s
 0.0002s

   Parallel GC work balance: 61.48% (serial 0%, perfect 100%)

   TASKS: 6 (1 bound, 5 peak workers (5 total), using -N4)

   SPARKS: 0 (0 converted, 0 overflowed, 0 dud, 0 GC'd, 0 fizzled)

   INIT    time    0.00s  (  0.00s elapsed)
   MUT     time   54.57s  ( 20.89s elapsed)
   GC      time   28.64s  (  0.38s elapsed)
   EXIT    time    0.00s  (  0.00s elapsed)
   Total   time   83.21s  ( 21.27s elapsed)

   Alloc rate    193,121,729 bytes per MUT second

   Productivity  65.6% of total user, 256.6% of total elapsed

 gc_alloc_block_sync: 28902
 whitehole_spin: 0
 gen[0].sync: 0
 gen[1].sync: 0
 ./q 12 +RTS -N4 -s  83.21s user 0.18s system 392% cpu 21.272 total
 }}}

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



More information about the ghc-tickets mailing list