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

Parallelize Remset Tracking Update Before Rebuild phase

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b11

      Description

      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

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: