Next: Cost Centre Profiling Up: Sequential Tools Previous: Sequential Tools

GC Statistics

The garbage collection statistics reported by the sequential RTS are useful in GUM. For each PE the residency can be plotted over time. GUM garbage collection statistics also report both elapsed and virtual time for initialisation, mutation and garbage collection for each PE. Initialisation records the time between the PE task starting and the start of Mutation. Mutation time is the time from initialisation to termination. It includes the time spent performing reduction, communicating or idle, but excludes time spent garbage collecting.

A heap profile generated when running a linear equation solver over four SUN 4 SPARC processors connected by NFS is given below. Processor numbers (c0001, 80001 etc) refer to PVM task-ids. The ratio between elapsed and user time shows how much of the elapsed time the PE task was descheduled.


Processor c0001 shutting down, 260 Threads run

133,383,480 bytes allocated in the heap
71 garbage collections  (0 major, 71 minor)

  INIT  time    0.05s  (  2.10s elapsed)
  MUT   time  110.43s  (162.46s elapsed)
  GC    time    1.78s  (  2.50s elapsed)
  Total time  112.26s  (167.06s elapsed)

  %GC time       1.6%  (1.5% elapsed)

  Alloc rate    1,207,308 bytes per MUT second

  Productivity  98.4% of total user,
                66.1% of total elapsed

Processor 80001 shutting down, 2201 Threads run

 58,968,324 bytes allocated in the heap
     72,508 bytes max residency (1.7%, 1 sample(s))
31 garbage collections  (1 major, 30 minor)

  INIT  time    0.04s  (  1.62s elapsed)
  MUT   time   66.77s  (162.97s elapsed)
  GC    time    1.17s  (  2.12s elapsed)
  Total time   67.98s  (166.71s elapsed)

  %GC time       1.7%  (1.3% elapsed)

  Alloc rate    882,627 bytes per MUT second

  Productivity  98.2% of total user, 
                40.1% of total elapsed

Processor 100001 shutting down, 2989 Threads run

106,720,188 bytes allocated in the heap
57 garbage collections  (0 major, 57 minor)

  INIT  time    0.11s  (  2.08s elapsed)
  MUT   time   72.71s  (164.21s elapsed)
  GC    time    0.60s  (  0.99s elapsed)
  Total time   73.42s  (167.28s elapsed)

  %GC time       0.8%  (0.6% elapsed)

  Alloc rate    1,465,534 bytes per MUT second

  Productivity  99.0% of total user, 
                43.5% of total elapsed

Processor 40003 shutting down, 3194 Threads run

 36,266,232 bytes allocated in the heap
18 garbage collections  (0 major, 18 minor)

  INIT  time    0.12s  (  2.16s elapsed)
  MUT   time   45.72s  (164.26s elapsed)
  GC    time    0.47s  (  1.00s elapsed)
  Total time   46.31s  (167.42s elapsed)

  %GC time       1.0%  (0.6% elapsed)

  Alloc rate    791,148 bytes per MUT second

  Productivity  98.7% of total user, 
                27.3% of total elapsed

kh@dcs.st-and.ac.uk
Thu Sep 21 15:49:19 BST 1995