Investigate fast-path for scanning only objects with references during gc

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Fixed
    • Priority: P3
    • 16
    • Affects Version/s: hs25, 8
    • Component/s: hotspot
    • gc
    • b16
    • Fix failed

        During evacuation, after copying an object to survivor space, it is scanned for further references that may need to be fixed up. This scanning involves calling oop_iterate() on the object.

        We noticed that in many benchmarks (dacapo, specjbb) a large part of the copied objects do not contain any references.

        I.e. across all dacapo benchmarks, over all gcs, on average only 63% of objects contain references, on Specjbb2005 only 60% (looking at instanceOops, typeArrayOops and objArrayOops which make up >97% of the objects copied).

        Investigate if it is possible to have a very fast check whether the copied object potentially contains references or not, skipping the oop iteration call otherwise (and hopefully improving performance in the process).

              Assignee:
              Kim Barrett
              Reporter:
              Thomas Schatzl
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: