[Rev 07] RFR: 6657: Add allocation pressure column to Memory and TLAB views

Jie Kang jkang at openjdk.java.net
Mon Jan 20 18:05:04 UTC 2020

> This patch addresses https://bugs.openjdk.java.net/browse/JMC-6657, which itself is a clone of https://bugs.openjdk.java.net/browse/JMC-5923 that targets the Memory and TLAB pages, rather than the stacktrace view.
> The ItemHistogram and related classes now have support for Percentage columns that divides the aggregate value for items in a row against the aggregate value for all items in the model.
> This is used in the Memory page to show Total Allocation as a Percentage. The TLAB page is modified to be tabbed and contains two ItemHistograms, one for classifying against Threads (previously existed) and one against Top Methods (new). Both also have two new columns: allocations inside and outside TLABs, as a percentage.
> ![tlab-page](https://user-images.githubusercontent.com/5430520/71093691-b2094c00-2177-11ea-9965-f27948964cd3.png)
> TLABs by Top Methods, showcasing sorting by the new percentage column. Together with the stacktrace view, I believe these changes make it easier to see relevant areas of allocation pressure.

The pull request has been updated with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase.


Added commits:
 - b5ddfdc1: Update licenses with correct year field
 - 86811758: Update licenses for year 2020
 - 546c1d9f: Revert field name change
 - dccecea0: Move name and description setting to percentage column creation. Remove duplicate aggregators
 - f03e96cb: Add translations for new column name and descriptions
 - 53cb730d: Shorten column names with short form for Allocation(s)
 - 0304f078: Shorten column names with short form for Average and Percentage
 - 658bb8a4: Fix accidental removal of code text
 - 81046ef0: Update name and description for percentage columns
 - 80136239: Fix key name in messages.properties
 - 44d1843d: Add tabs to tlab page for tlabs by threads and by top methods
 - 114ea7d4: Add percentage columns to tlab view
 - 9e97aa84: Store reference to all items in AggregationModel rather than the AggregationRow
 - 857bb4fe: Add allocation percentage column to memory view
 - 1676ecce: 6673: Upgrading to Tycho 1.6.0
 - e647a9d1: 6661: Simplify Agent JMX tests
 - c2134e2f: 6672: JavaScript formatting template
 - afcf74db: 6660: Make JMX API not return classes
 - ea933fab: 6674: Use try-with-resource in more places and close un-closed resources
 - 87905922: 6668: Move org.openjdk.jmc.jdp bundle from application to core
 - f74caa81: 6549: Color flame chart based on package name
 - 055db4fc: 6659: Remove 'Showing X of Y events...' table message when not applicable
 - bfb23cde: 6671: Eagerly convert end time to the same unit as start time
 - 0f08461f: 5721: Reintroduce the Percentage column
 - 67bc8668: 6658: Remove unnecessary storing of pre-instrumented bytecode
 - 7ad8f7c0: 6663: Reloading the Flame Chart View in Linux displays file browser
 - 31d82a7d: 6665: .project files still exist for removed platform definitions
 - 423e72db: 6662: Updating to Eclipse 2019-12 (4.14)
 - 2e81a835: 6583: Add filter and search table actions to EventBrowser page

  - all: https://git.openjdk.java.net/jmc/pull/21/files
  - new: https://git.openjdk.java.net/jmc/pull/21/files/867c2bb9..b5ddfdc1

 - full: https://webrevs.openjdk.java.net/jmc/21/webrev.07
 - incr: https://webrevs.openjdk.java.net/jmc/21/webrev.06-07

  Stats: 8102 lines in 159 files changed: 3942 ins; 3950 del; 210 mod
  Patch: https://git.openjdk.java.net/jmc/pull/21.diff
  Fetch: git fetch https://git.openjdk.java.net/jmc pull/21/head:pull/21

PR: https://git.openjdk.java.net/jmc/pull/21

More information about the jmc-dev mailing list