Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8247358

Shenandoah: reconsider free budget slice for marking

XMLWordPrintable

    • gc
    • b01

        Currently, every phase in normal cycle gets 1/3 (mark), 1/2 (evac) and 1 (update-refs) of the free heap. It makes sense when the allocation rate is constant and there is no reclamation of immediate garbage. However, if we ditch a lot of immediate garbage after the mark, we make the pacer for mark 3x more aggressive without good reason.

        Since at least adaptive heuristics starts the cycle so that allocation rate would not deplete the heap soon, we can instead assign 1 of free heap to mark. Leaving 1/2 to evac seems to be fruitful nevertheless: it insulates from oom-evac, and leaves some headroom for update-refs.

              shade Aleksey Shipilev
              shade Aleksey Shipilev
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: