<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Erik,<div class=""><br class=""></div><div class="">Is it possible to generate a few examples such as this? <a href="http://cr.openjdk.java.net/~brutisso/JEP-271/review.00/compare.html" class="">http://cr.openjdk.java.net/~brutisso/JEP-271/review.00/compare.html</a></div><div class=""><br class=""></div><div class="">Kind regards,</div><div class="">Kirk</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 14, 2016, at 4:00 PM, Erik Helin <<a href="mailto:erik.helin@oracle.com" class="">erik.helin@oracle.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Hi all,<br class=""><br class="">this patch re-organizes the slightly messy phase logging for G1. Right<br class="">now there are a couple of "top-level" phases at gc+phases=info level:<br class="">- Evacuate Collection Set<br class="">- Code Roots<br class="">- Merge Per-Thread States<br class="">- Clear card table<br class="">- Free Collection Set<br class="">- Other<br class="">(-Root Region Scan Waiting if it takes any time)<br class=""><br class="">There is no reasoning for showing exactly these phases, they have more or<br class="">less just been added over the years. The "Other" phase includes multiple<br class="">miscellanous phases as well as unknown/unmeasured time. This patch<br class="">introduces four phases on the gc+phases=info level:<br class="">- Pre Evacuate Collectinon Set<br class="">- Evacuate Collection Set<br class="">- Post Evacuate Collection Set<br class="">- Other<br class=""><br class="">where "Other" now is only unknown/unmeasured time. I have organized the<br class="">phases at gc+phases=debug level so they are now in "execution order":<br class="">- Pre Evacuate Collection Set<br class=""> - Choose Collection Set<br class=""> - Humongous Register<br class="">- Evacuate Collection Set<br class=""> - Ext Root Scanning<br class=""> - Update RS<br class=""> - Scan RS<br class=""> - Code Root Scanning<br class=""> - Object Copy<br class=""> - Termination<br class="">- Post Evacuate Collection Set<br class=""> - Code Roots Fixup<br class=""> - Preserve CM Refs<br class=""> - Reference Processing<br class=""> - Clear Card Table<br class=""> - Reference Enqueuing<br class=""> - Code Roots Purge<br class=""> - Redirty Cards<br class=""> - Free Collection Set<br class=""> - Humongous Reclaim<br class=""> - Expand Heap After Collection<br class="">- Other<br class=""><br class="">The "Code Roots" phase at info level was removed since it doesn't make<br class="">sense to sum "Code Roots Fixup" and "Code Roots Purge", that shouldn't<br class="">have been done to begin with. <br class=""><br class="">As for the code, I removed a few macros and replaced them with just<br class="">normal functions.<br class=""><br class="">Webrev:<br class=""><a href="http://cr.openjdk.java.net/~ehelin/8167679/00/" class="">http://cr.openjdk.java.net/~ehelin/8167679/00/</a><br class=""><br class="">Bug:<br class="">https://bugs.openjdk.java.net/browse/JDK-8167679<br class=""><br class="">Testing:<br class="">- JPRT<br class=""><br class="">Thanks,<br class="">Erik<br class=""></div></div></blockquote></div><br class=""></div></body></html>