Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : ghc-7.4

http://hackage.haskell.org/trac/ghc/changeset/d677a952d666e5e7144e60524efb6989dddeb383

>---------------------------------------------------------------

commit d677a952d666e5e7144e60524efb6989dddeb383
Author: Simon Marlow <[email protected]>
Date:   Fri Mar 2 10:53:34 2012 +0000

    Drop the per-task timing stats, give a summary only (#5897)
    
    We were keeping around the Task struct (216 bytes) for every worker we
    ever created, even though we only keep a maximum of 6 workers per
    Capability.  These Task structs accumulate and cause a space leak in
    programs that do lots of safe FFI calls; this patch frees the Task
    struct as soon as a worker exits.
    
    One reason we were keeping the Task structs around is because we print
    out per-Task timing stats in +RTS -s, but that isn't terribly useful.
    What is sometimes useful is knowing how *many* Tasks there were.  So
    now I'm printing a single-line summary, this is for the program in
    
      TASKS: 2001 (1 bound, 31 peak workers (2000 total), using -N1)
    
    So although we created 2k tasks overall, there were only 31 workers
    active at any one time (which is exactly what we expect: the program
    makes 30 safe FFI calls concurrently).
    
    This also gives an indication of how many capabilities were being
    used, which is handy if you use +RTS -N without an explicit number.
    
    MERGED from commit 085c7fe5d4ea6e7b59f944d46ecfeba3755a315b

 rts/RtsMain.c         |    3 +-
 rts/Stats.c           |   42 +++++++++-----------
 rts/Task.c            |  100 ++++++++++++++++++++++---------------------------
 rts/Task.h            |   30 +++-----------
 rts/posix/OSThreads.c |    1 -
 rts/sm/Compact.c      |    2 +-
 6 files changed, 73 insertions(+), 105 deletions(-)


Diff suppressed because of size. To see it, use:

    git show d677a952d666e5e7144e60524efb6989dddeb383

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to