RFR: 6657: Add allocation pressure column to Memory and TLAB views

Jie Kang jkang at openjdk.java.net
Wed Dec 18 14:26:24 UTC 2019


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 allocations inside and outside TLABs, as a percentage.

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.

![tlab-page](https://user-images.githubusercontent.com/5430520/71093691-b2094c00-2177-11ea-9965-f27948964cd3.png)

-------------

Commits:
 - 9f73e4fd: Fix accidental removal of code text
 - d49a06e5: Update name and description for percentage columns
 - e68f4a2e: Fix key name in messages.properties
 - 2f6e4b7b: Add tabs to tlab page for tlabs by threads and by top methods
 - 6d2e5f2a: Add percentage columns to tlab view
 - d6c53b42: Store reference to all items in AggregationModel rather than the AggregationRow
 - bae85de1: Add allocation percentage column to memory view

Changes: https://git.openjdk.java.net/jmc/pull/21/files
 Webrev: https://webrevs.openjdk.java.net/jmc/21/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JMC-6657
  Stats: 192 lines in 15 files changed: 145 ins; 3 del; 44 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