Summary
Rename two TLAB performance counters:
sun.gc.tlab.slowWaste=>sun.gc.tlab.refillWastesun.gc.tlab.maxSlowWaste=>sun.gc.tlab.maxRefillWaste
These performance counters can be accessed in two ways: jcmd and jdk.internal APIs.
jcmd <pid> PerfCounter.print will print counters with only the new names.
If a user queries the counter programmatically via AbstractPerfDataBuffer query APIs, (e.g. Monitor findByName(String name)), both old and new names work, because src/jdk.internal.jvmstat/share/classes/sun/jvmstat/perfdata/resources/aliasmap is updated treat old names as aliases of the new names.
Problem
The underlying counters are dropping slow in their names, so the corresponding exposed performance counters should be updated accordingly as well.
Solution
Rename those two counters so that
sun.gc.tlab.refillWaste tracks _perf_total_refill_waste and sun.gc.tlab.maxRefillWaste tracks _perf_max_refill_waste.
Specification
The most important change is in src/hotspot/share/gc/shared/threadLocalAllocBuffer.cpp, shown below.
Before:
_perf_total_slow_refill_waste = create_perf_variable("slowWaste", PerfData::U_Bytes, CHECK);
_perf_max_slow_refill_waste = create_perf_variable("maxSlowWaste", PerfData::U_Bytes, CHECK);
After:
_perf_total_refill_waste = create_perf_variable("refillWaste", PerfData::U_Bytes, CHECK);
_perf_max_refill_waste = create_perf_variable("maxRefillWaste", PerfData::U_Bytes, CHECK);
- csr of
-
JDK-8267468 Rename refill waster counters in ThreadLocalAllocBuffer
-
- Resolved
-