8329660: G1: Improve TestGCLogMessages to be more precise
Reviewed-by: tschatzl, ayang
This commit is contained in:
parent
006a516aa0
commit
aebfd53e9d
@ -534,7 +534,7 @@ double G1GCPhaseTimes::print_post_evacuate_collection_set(bool evacuation_failed
|
||||
trace_time("Serial Free Collection Set", _recorded_serial_free_cset_time_ms);
|
||||
|
||||
debug_time("Rebuild Free List", _recorded_total_rebuild_freelist_time_ms);
|
||||
trace_time("Serial Rebuild Free List ", _recorded_serial_rebuild_freelist_time_ms);
|
||||
trace_time("Serial Rebuild Free List", _recorded_serial_rebuild_freelist_time_ms);
|
||||
trace_phase(_gc_par_phases[RebuildFreeList]);
|
||||
|
||||
debug_time("Prepare For Mutator", _recorded_prepare_for_mutator_time_ms);
|
||||
|
@ -102,64 +102,64 @@ public class TestGCLogMessages {
|
||||
}
|
||||
|
||||
private LogMessageWithLevel allLogMessages[] = new LogMessageWithLevel[] {
|
||||
new LogMessageWithLevel("Pre Evacuate Collection Set", Level.INFO),
|
||||
new LogMessageWithLevel("Evacuate Collection Set", Level.INFO),
|
||||
new LogMessageWithLevel("Post Evacuate Collection Set", Level.INFO),
|
||||
new LogMessageWithLevel("Other", Level.INFO),
|
||||
new LogMessageWithLevel("Pre Evacuate Collection Set:", Level.INFO),
|
||||
new LogMessageWithLevel("Evacuate Collection Set:", Level.INFO),
|
||||
new LogMessageWithLevel("Post Evacuate Collection Set:", Level.INFO),
|
||||
new LogMessageWithLevel("Other:", Level.INFO),
|
||||
|
||||
// Pre Evacuate Collection Set
|
||||
new LogMessageWithLevel("JT Retire TLABs And Flush Logs", Level.DEBUG),
|
||||
new LogMessageWithLevel("Non-JT Flush Logs", Level.DEBUG),
|
||||
new LogMessageWithLevel("Choose Collection Set", Level.DEBUG),
|
||||
new LogMessageWithLevel("Region Register", Level.DEBUG),
|
||||
new LogMessageWithLevel("Prepare Heap Roots", Level.DEBUG),
|
||||
new LogMessageWithLevel("JT Retire TLABs And Flush Logs \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Non-JT Flush Logs \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Choose Collection Set:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Region Register:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Prepare Heap Roots:", Level.DEBUG),
|
||||
// Merge Heap Roots
|
||||
new LogMessageWithLevel("Merge Heap Roots", Level.INFO),
|
||||
new LogMessageWithLevel("Prepare Merge Heap Roots", Level.DEBUG),
|
||||
new LogMessageWithLevel("Eager Reclaim", Level.DEBUG),
|
||||
new LogMessageWithLevel("Remembered Sets", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Inline", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged ArrayOfCards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Full", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl Inline", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl ArrayOfCards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl BitMap", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl Full", Level.DEBUG),
|
||||
new LogMessageWithLevel("Log Buffers", Level.DEBUG),
|
||||
new LogMessageWithLevel("Dirty Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Skipped Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merge Heap Roots:", Level.INFO),
|
||||
new LogMessageWithLevel("Prepare Merge Heap Roots:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Eager Reclaim \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Remembered Sets \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Inline:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged ArrayOfCards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Full:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl Inline:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl ArrayOfCards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl BitMap:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Howl Full:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Log Buffers \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Dirty Cards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merged Cards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Skipped Cards:", Level.DEBUG),
|
||||
// Evacuate Collection Set
|
||||
new LogMessageWithLevel("Ext Root Scanning", Level.DEBUG),
|
||||
new LogMessageWithLevel("Thread Roots", Level.TRACE),
|
||||
new LogMessageWithLevel("CLDG Roots", Level.TRACE),
|
||||
new LogMessageWithLevel("CM RefProcessor Roots", Level.TRACE),
|
||||
new LogMessageWithLevel("Ext Root Scanning \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Thread Roots \\(ms\\):", Level.TRACE),
|
||||
new LogMessageWithLevel("CLDG Roots \\(ms\\):", Level.TRACE),
|
||||
new LogMessageWithLevel("CM RefProcessor Roots \\(ms\\):", Level.TRACE),
|
||||
new LogMessageWithLevel("JNI Global Roots", Level.TRACE),
|
||||
new LogMessageWithLevel("VM Global Roots", Level.TRACE),
|
||||
// Scan Heap Roots
|
||||
new LogMessageWithLevel("Scan Heap Roots", Level.DEBUG),
|
||||
new LogMessageWithLevel("Scanned Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Scanned Blocks", Level.DEBUG),
|
||||
new LogMessageWithLevel("Claimed Chunks", Level.DEBUG),
|
||||
new LogMessageWithLevel("Found Roots", Level.DEBUG),
|
||||
new LogMessageWithLevel("Scan Heap Roots \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Scanned Cards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Scanned Blocks:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Claimed Chunks:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Found Roots:", Level.DEBUG),
|
||||
// Code Roots Scan
|
||||
new LogMessageWithLevel("Code Root Scan", Level.DEBUG),
|
||||
new LogMessageWithLevel("Code Root Scan \\(ms\\):", Level.DEBUG),
|
||||
// Object Copy
|
||||
new LogMessageWithLevel("Object Copy", Level.DEBUG),
|
||||
new LogMessageWithLevel("Copied Bytes", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Waste", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Undo Waste", Level.DEBUG),
|
||||
new LogMessageWithLevel("Object Copy \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Copied Bytes:", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Waste:", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Undo Waste:", Level.DEBUG),
|
||||
// Termination
|
||||
new LogMessageWithLevel("Termination", Level.DEBUG),
|
||||
new LogMessageWithLevel("Termination Attempts", Level.DEBUG),
|
||||
new LogMessageWithLevel("Termination \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Termination Attempts:", Level.DEBUG),
|
||||
// Post Evacuate Collection Set
|
||||
// NMethod List Cleanup
|
||||
new LogMessageWithLevel("NMethod List Cleanup", Level.DEBUG),
|
||||
new LogMessageWithLevel("NMethod List Cleanup:", Level.DEBUG),
|
||||
// Reference Processing
|
||||
new LogMessageWithLevel("Reference Processing", Level.DEBUG),
|
||||
new LogMessageWithLevel("Reference Processing:", Level.DEBUG),
|
||||
// VM internal reference processing
|
||||
new LogMessageWithLevel("Weak Processing", Level.DEBUG),
|
||||
new LogMessageWithLevel("Weak Processing:", Level.DEBUG),
|
||||
new LogMessageWithLevel("VM Weak", Level.DEBUG),
|
||||
new LogMessageWithLevel("ObjectSynchronizer Weak", Level.DEBUG),
|
||||
new LogMessageWithLevel("JVMTI Tag Weak OopStorage", Level.DEBUG),
|
||||
@ -169,31 +169,31 @@ public class TestGCLogMessages {
|
||||
new LogMessageWithLevel("JNI Weak", Level.DEBUG),
|
||||
|
||||
// Post Evacuate Cleanup 1
|
||||
new LogMessageWithLevel("Post Evacuate Cleanup 1", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merge Per-Thread State", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Waste", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Undo Waste", Level.DEBUG),
|
||||
new LogMessageWithLevel("Evac Fail Extra Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Clear Logged Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Recalculate Used Memory", Level.DEBUG),
|
||||
new LogMessageWithLevel("Post Evacuate Cleanup 1:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Merge Per-Thread State \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Waste:", Level.DEBUG),
|
||||
new LogMessageWithLevel("LAB Undo Waste:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Evac Fail Extra Cards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Clear Logged Cards \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Recalculate Used Memory \\(ms\\):", Level.DEBUG),
|
||||
|
||||
// Post Evacuate Cleanup 2
|
||||
new LogMessageWithLevel("Post Evacuate Cleanup 2", Level.DEBUG),
|
||||
new LogMessageWithLevel("Post Evacuate Cleanup 2:", Level.DEBUG),
|
||||
new LogMessageWithLevelC2OrJVMCIOnly("Update Derived Pointers", Level.DEBUG),
|
||||
new LogMessageWithLevel("Redirty Logged Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Redirtied Cards", Level.DEBUG),
|
||||
new LogMessageWithLevel("Resize TLABs", Level.DEBUG),
|
||||
new LogMessageWithLevel("Free Collection Set", Level.DEBUG),
|
||||
new LogMessageWithLevel("Serial Free Collection Set", Level.TRACE),
|
||||
new LogMessageWithLevel("Young Free Collection Set", Level.TRACE),
|
||||
new LogMessageWithLevel("Non-Young Free Collection Set", Level.TRACE),
|
||||
new LogMessageWithLevel("Redirty Logged Cards \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Redirtied Cards:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Resize TLABs \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Free Collection Set \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Serial Free Collection Set:", Level.TRACE),
|
||||
new LogMessageWithLevel("Young Free Collection Set \\(ms\\):", Level.TRACE),
|
||||
new LogMessageWithLevel("Non-Young Free Collection Set \\(ms\\):", Level.TRACE),
|
||||
|
||||
// Misc Top-level
|
||||
new LogMessageWithLevel("Rebuild Free List", Level.DEBUG),
|
||||
new LogMessageWithLevel("Serial Rebuild Free List", Level.TRACE),
|
||||
new LogMessageWithLevel("Parallel Rebuild Free List", Level.TRACE),
|
||||
new LogMessageWithLevel("Prepare For Mutator", Level.DEBUG),
|
||||
new LogMessageWithLevel("Expand Heap After Collection", Level.DEBUG),
|
||||
new LogMessageWithLevel("Rebuild Free List:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Serial Rebuild Free List:", Level.TRACE),
|
||||
new LogMessageWithLevel("Parallel Rebuild Free List \\(ms\\):", Level.TRACE),
|
||||
new LogMessageWithLevel("Prepare For Mutator:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Expand Heap After Collection:", Level.DEBUG),
|
||||
};
|
||||
|
||||
void checkMessagesAtLevel(OutputAnalyzer output, LogMessageWithLevel messages[], Level level) throws Exception {
|
||||
@ -258,13 +258,13 @@ public class TestGCLogMessages {
|
||||
}
|
||||
|
||||
LogMessageWithLevel exhFailureMessages[] = new LogMessageWithLevel[] {
|
||||
new LogMessageWithLevel("Recalculate Used Memory", Level.DEBUG),
|
||||
new LogMessageWithLevel("Restore Preserved Marks", Level.DEBUG),
|
||||
new LogMessageWithLevel("Restore Evacuation Failed Regions", Level.DEBUG),
|
||||
new LogMessageWithLevel("Process Evacuation Failed Regions", Level.DEBUG),
|
||||
new LogMessageWithLevel("Evacuation Failed Regions", Level.DEBUG),
|
||||
new LogMessageWithLevel("Pinned Regions", Level.DEBUG),
|
||||
new LogMessageWithLevel("Allocation Failed Regions", Level.DEBUG),
|
||||
new LogMessageWithLevel("Recalculate Used Memory \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Restore Preserved Marks \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Restore Evacuation Failed Regions \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Process Evacuation Failed Regions \\(ms\\):", Level.DEBUG),
|
||||
new LogMessageWithLevel("Evacuation Failed Regions:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Pinned Regions:", Level.DEBUG),
|
||||
new LogMessageWithLevel("Allocation Failed Regions:", Level.DEBUG),
|
||||
};
|
||||
|
||||
private void testWithEvacuationFailureLogs() throws Exception {
|
||||
|
Loading…
x
Reference in New Issue
Block a user