view README.md @ 77:b653734241e8

Add very basic README.
author shade
date Fri, 12 May 2017 11:11:43 +0200
parents
children
line wrap: on
line source

Garbage Collection Benchmarks
------------------------------------------------------------------------------------

This project collects the interesting workloads for Garbage Collection performance
measurement. The workloads are exercising the specific modes where GC may find
themselves. Note that most workloads here are inherently synthetic, and they showcase
the GC performance in several modes, not necessarily present in all applications
and all workloads.

The suite is organized as to stress these behaviors:

 A. The dependency of object lifecycle on GC performance. Different applications
    exhibit different object lifetimes. At one extreme, there are heavily generational
    workloads where the most objects die young. At another extreme, there are
    workloads where almost no young objects die, and instead the oldest objects
    continuously die (think LRU caches).

 B. Allocation pressure. There are several distinct modes for GC to operate in:
      1. No allocation. In this case, the workloads measure the runtime overheads
         of mutator-GC interface.
      2. Extreme allocation. The adversarial workloads that do not do any work,
         but only allocate objects. This measures how GC is able to recover under
         significant pressure.
      3. Normal allocation (where "normal" is defined as a few points in-between
         no and extreme allocation)