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

Parallelize Remset Tracking Update Before Rebuild phase

XMLWordPrintable

    • gc
    • b11

      Since moving reclaim regions into the Remark phase there are concerns of making it too long.

      Measurements show that for ~3200 regions (100GB heap, 32GB regions) the Remset Tracking Update Before Rebuild phase takes around one ms.

      remark-parallel-base.log:[113.354s][debug][gc,phases] GC(10) Update Remembered Set Tracking Before Rebuild 0.965ms
      remark-parallel-base.log:[147.049s][debug][gc,phases] GC(15) Update Remembered Set Tracking Before Rebuild 0.964ms
      remark-parallel-base.log:[198.223s][debug][gc,phases] GC(19) Update Remembered Set Tracking Before Rebuild 0.969ms
      remark-parallel-base.log:[237.106s][debug][gc,phases] GC(24) Update Remembered Set Tracking Before Rebuild 1.047ms
      remark-parallel-base.log:[278.606s][debug][gc,phases] GC(29) Update Remembered Set Tracking Before Rebuild 1.057ms
      remark-parallel-base.log:[312.429s][debug][gc,phases] GC(33) Update Remembered Set Tracking Before Rebuild 0.663ms

      On very large heaps this increases linearly, so it may be useful to parallelize this phase with a reasonable parallelization factor, like a few hundred regions per thread started

            tschatzl Thomas Schatzl
            tschatzl Thomas Schatzl
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: