Simon Marlow wrote:
Right - Ptr isn't the right thing here, because GC will move objects
around. That's why we have StablePtr and StableName.

may it be that makeStableName is expensive? (or it is my additional Map?)

My old version is faster, because the version with makeStableName does very much GC.

Christian

1. with makeStableName (and a Map):

2,447,401,824 bytes allocated in the heap
703,294,688 bytes copied during GC
 50,780,688 bytes maximum residency (24 sample(s))

       9328 collections in generation 0 (129.88s)
         24 collections in generation 1 (  4.10s)

         99 Mb total memory in use

  INIT  time    0.00s  (  0.00s elapsed)
  MUT   time   27.28s  ( 28.91s elapsed)
  GC    time  133.98s  (140.08s elapsed)
  EXIT  time    0.00s  (  0.00s elapsed)
  Total time  161.26s  (168.99s elapsed)

  %GC time      83.1%  (82.9% elapsed)

  Alloc rate    89,714,143 bytes per MUT second

  Productivity  16.9% of total user, 16.1% of total elapsed


2. without makeStableName:

7,560,158,340 bytes allocated in the heap
578,736,496 bytes copied during GC
 44,307,024 bytes maximum residency (25 sample(s))

      28832 collections in generation 0 (  6.83s)
         25 collections in generation 1 (  3.20s)

        102 Mb total memory in use

  INIT  time    0.00s  (  0.00s elapsed)
  MUT   time  139.71s  (146.74s elapsed)
  GC    time   10.03s  ( 10.94s elapsed)
  EXIT  time    0.00s  (  0.00s elapsed)
  Total time  149.74s  (157.68s elapsed)

  %GC time       6.7%  (6.9% elapsed)

  Alloc rate    54,113,222 bytes per MUT second

  Productivity  93.3% of total user, 88.6% of total elapsed
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to