Speedup marking inter-region refs in 2-phase CC
Using card table to indicate objects with inter-regions references has performance implications. Due to coarse-granularity of card-table, it leads to excessive number of unneeded objects being re-visited. Also, it forces calling Scan with true for kNoUnEvac as the distinction between mutated objects and ones with inter-region references is lost. A separate bitmap is introduced which is updated in the marking phase during full-heap GC to track objects with inter-region references. Then, in copying phase, this bitmap is scanned to re-visit such objects. Test: art/test/testrunner/testrunner.py --target --runtime-option=-XX:DumpGCPerformanceOnShutdown Bug: 112720851 Change-Id: Idd032c18ffdddc13c71668502ef1f53a19dcee71
Loading
Please sign in to comment