Performance of Non-Moving Garbage Collectors



Click here to start the Slideshow





Created on Thursday 19 June 2003 by Hans-J. Boehm

Table of Contents
  1. Performance of Non-Moving Garbage Collectors
  2. Why Use (Tracing) Garbage Collection to
  3. Why is it still interesting?
  4. Why Non-Moving?
  5. Basic Non-moving GC algorithm
  6. Stack
  7. Easy Performance Issue 1
  8. Easy Performance Issue 2
  9. Basic Memory Management Comparison
  10. Reference Counting Review
  11. Execution Time (msecs, 2GHz Xeon)
  12. Boost Reference Counting Details
  13. Execution Time (msecs, 1Ghz Itanium 2)
  14. Execution Time Observations
  15. Execution time Observations 2
  16. Max Heap Size (MB, 2GHz Xeon)
  17. Max Heap Size (MB, 1Ghz Itanium 2)
  18. Heap Size Observations
  19. Pause Time
  20. Max Pause Time (msecs, 2GHz Xeon)
  21. Max Pause Time (msecs, 1Ghz Itanium 2)
  22. Effect of Object Size
  23. Large Objects (msecs, MB, 2GHz Xeon)
  24. Large Objects (thread-safe)
  25. Can GC Do Better?
  26. Prefetching during trace
  27. Prefetching during trace (contd.)
  28. Taking advantage of multiprocessors
  29. GCBench Improvements (Itanium 2)
  30. Ghostscript throughput
  31. Things to remember
  32. Outtakes