Commit Graph

47 Commits

Author SHA1 Message Date
Paul Hohensee 370b0a59d4 8217520: Remove vm.opt.MaxGCPauseMillis == "null" from TestOldGenCollectionUsage.java
Remove the corresponding @requires line

Reviewed-by: tschatzl
2019-01-30 17:32:47 +00:00
Paul Hohensee 256d66b3c7 8215934: G1 Old Gen MemoryPool CollectionUsage.used values don't reflect mixed GC results
Memory pools can now be optional collection participants, e.g., G1 Old Gen in an incremental collection.

Reviewed-by: tschatzl, jcbeyler, andrew
2019-01-28 17:51:10 +00:00
Thomas Schatzl 212ad4665e 8129602: Incorrect GPL header causes RE script to create wrong output
Fix up GPL headers so that the RE script works.

Reviewed-by: stefank, dholmes, coleenp
2015-06-25 10:12:25 +02:00
Stefan Johansson 45cdec5131 8031686: G1: assert(_hrs.max_length() == _expansion_regions) failed
Using pointer_delta to avoid overflowing pointer calculation.

Reviewed-by: jwilhelm, ehelin
2014-01-20 10:55:54 +01:00
Andrey Zakharov 5e87763e5c 8061715: gc/g1/TestShrinkAuxiliaryData15.java fails with java.lang.RuntimeException: heap decommit failed - after > before
Added WhiteBox methods to count regions and exact aux data sizes

Reviewed-by: jwilhelm, brutisso
2015-05-19 15:49:27 +02:00
Kim Barrett 26055f8bcb 8069367: Eagerly reclaimed humongous objects left on mark stack
Prevent eager reclaim of objects that might be on mark stack.

Reviewed-by: brutisso, tschatzl
2015-04-15 12:16:01 -04:00
Thomas Schatzl 250126c650 8048179: Early reclaim of large objects that are referenced by a few objects
Push the remembered sets of large objects with few referenced into the dirty card queue at the beginning of the evacuation so that they may end up with zero remembered set entries at the end of the collection, and are potentially reclaimed. Also improve timing measurements of the early reclaim mechanism, and shorten flag names.

Reviewed-by: brutisso, jmasa, dfazunen
2015-01-07 15:15:37 +01:00
Thomas Schatzl 1e6b498190 8078375: [TESTBUG] gc/g1/TestLargePageUseForAuxMemory.java specifies wrong library path
Reviewed-by: jmasa, jwilhelm
2015-04-24 09:47:07 +02:00
Jesper Wilhelmsson af34e1df69 8062537: [TESTBUG] Conflicting GC combinations in hotspot tests
Reviewed-by: tschatzl, jwilhelm
2015-04-23 15:59:48 +02:00
Thomas Schatzl 5a73324abd 8058354: SPECjvm2008-Derby -2.7% performance regression on Solaris-X64 starting with 9-b29
Allow use of large pages for auxiliary data structures in G1. Clean up existing interfaces.

Reviewed-by: jmasa, pliden, stefank
2015-04-07 10:53:51 +02:00
Bengt Rutisson 85fe9907e5 8027962: Per-phase timing measurements for strong roots processing
Reviewed-by: tschatzl, ecaspole
2015-03-19 15:25:54 +01:00
Sangheon Kim 184985e0cc 8058801: G1TraceReclaimDeadHumongousObjectsAtYoungGC only prints humongous object liveness output when there is at least one candidate humongous object
If G1TraceReclaimDeadHumongousObjectsAtYoungGC is enabled, always print humongous object liveness output.

Reviewed-by: tschatzl
2014-10-10 12:15:51 +02:00
Andrey Zakharov 1b25f01c31 8064716: TestHumongousShrinkHeap.java can not be run with -XX:+ExplicitGCInvokesConcurrent
8062957: Heap is not shrunk when deallocating under memory pressure

Added explicit -XX:-ExplicitGCInvokesConcurrent to invocations

Reviewed-by: brutisso, tschatzl
2014-11-14 17:39:07 +04:00
Marcus Larsson 1f3f54591b 8060116: After JDK-8047976 gc/g1/TestSummarizeRSetStatsThreads fails
Also reviewed by: sangheon.kim@oracle.com

Reviewed-by: brutisso
2014-10-14 19:55:54 +02:00
Andrey Zakharov dadd2bcccf 8043766: CMM Testing: 8u40 Decommit auxiliary data structures
Check that native memory is returned to the system when decommiting memory within the heap with G1.

Reviewed-by: tschatzl, jwilhelm
2014-09-29 09:59:23 +02:00
Thomas Schatzl d3d896786f 8052172: Evacuation failure handling in G1 does not evacuate all objects if -XX:-G1DeferredRSUpdate is set
Remove -XX:-G1DeferredRSUpdate functionality as it is racy. During evacuation failure handling, threads where evacuation failure handling occurred may try to add remembered sets to regions which remembered sets are currently being scanned. The iterator to handle the remembered set scan does not support addition of entries during scan and so may skip valid references.

Reviewed-by: iveresov, brutisso, mgerdin
2014-09-30 09:44:36 +02:00
Andrey Zakharov 320bdf166b 8056237: [TESTBUG] gc/g1/TestHumongousShrinkHeap.java fails due to OOM
Added respect for available memory. Renamed function names

Reviewed-by: jwilhelm, tschatzl
2014-09-11 14:21:24 +02:00
Andrey Zakharov 10ea685bb7 8041946: CMM Testing: 8u40 an allocated humongous object at the end of the heap should not prevents shrinking the heap
New test added

Reviewed-by: jwilhelm, tschatzl
2014-09-11 14:21:13 +02:00
Thomas Schatzl 7e63a62dd7 8056043: Heap does not shrink within the heap after JDK-8038423
Enable shrinking within the heap by removing some code added for JDK-8054818. Enable the test case that checks that again too.

Reviewed-by: jwilhelm, jmasa
2014-09-03 09:24:07 +02:00
Andrey Zakharov 94c41f1e07 8037925: CMM Testing: an allocated humongous object at the end of the heap should not prevents shrinking the heap
New test added.

Reviewed-by: ehelin, tschatzl, jwilhelm
2014-09-03 09:23:58 +02:00
Thomas Schatzl 4300bfe5f0 8054362: gc/g1/TestEagerReclaimHumongousRegions2.java timeout
Give the test a time limit of approximately one minute so that it exits early on slow machines.

Reviewed-by: ehelin, dfazunen, brutisso
2014-08-18 15:41:57 +02:00
Thomas Schatzl 6ab8b41cca 8052170: G1 asserts at collection exit with -XX:-G1DeferredRSUpdate
Do not try to verify timing measures for the redirty logged cards phase when it is not executed.

Reviewed-by: brutisso, jmasa
2014-08-07 22:28:16 +02:00
Thomas Schatzl 28a9b74af2 8051973: Eager reclaim leaves marks of marked but reclaimed objects on the next bitmap
Eager reclaim also needs to clear marks of eagerly reclaimed regions if they have already been marked during concurrent mark.

Reviewed-by: jmasa
2014-07-31 09:23:24 +02:00
Thomas Schatzl 74e67f185f 8027959: Early reclamation of large objects in G1
Try to reclaim humongous objects at every young collection after doing a conservative estimate of its liveness.

Reviewed-by: brutisso, mgerdin
2014-07-23 09:03:32 +02:00
Jon Masamitsu 498da47120 8038928: gc/g1/TestGCLogMessages.java fail with "[Evacuation Failure'
Reviewed-by: ysr, brutisso, tschatzl
2014-05-11 16:35:43 -07:00
Thomas Schatzl 3a227e7886 8040977: G1 crashes when run with -XX:-G1DeferredRSUpdate
When G1 is run with -XX:-G1DeferredRSUpdate, the VM crashes because of wrong initialization order of member variables. The change makes the initalization explicit, not relying on initialization order any more.

Reviewed-by: brutisso, mgerdin
2014-07-21 09:41:06 +02:00
Andrey Zakharov 2ebb3718c2 8026847: [TESTBUG] gc/g1/TestSummarizeRSetStats* tests launch 32bit jvm with UseCompressedOops
The test launched a 32 bit VM with UseCompressedOops enabled. This is not supported on 32 bit VMs, causing a test failure. Investigation showed that the use of this flag is not required at all, so simply remove it.

Reviewed-by: tschatzl, jwilhelm
2014-07-21 09:40:19 +02:00
Thomas Schatzl 297f319bf8 8019342: G1: High "Other" time most likely due to card redirtying
Parallelize card redirtying to decrease the time it takes.

Reviewed-by: brutisso
2014-07-21 09:40:19 +02:00
Per Lidén 9d63a03e7c 8042310: TestStringDeduplicationMemoryUsage test failing
Reviewed-by: ehelin, jwilhelm
2014-05-30 10:43:51 +02:00
Per Lidén bed7a5e664 8038461: Test gc/g1/TestStringDeduplicationMemoryUsage.java fails with unexpected memory usage
Reviewed-by: jmasa, sjohanss
2014-04-03 10:39:27 +02:00
Per Lidén e9acbd7c38 8029075: String deduplication in G1
Implementation of JEP 192, http://openjdk.java.net/jeps/192

Reviewed-by: brutisso, tschatzl, coleenp
2014-03-18 19:07:22 +01:00
Thomas Schatzl f5bf8669db 8035654: Add times for evacuation failure handling in "Other" time
Detailed breakdown of time spent in the evacuation failure handling phases to make the "Other" time roughly correspond to the sum of its parts.

Reviewed-by: jwilhelm, jmasa
2014-03-24 15:30:46 +01:00
Thomas Schatzl aabfd5d2b8 8035398: Add card redirty time in "Other" time in G1
Show the time taken by card redirtying during GC in a new "Redirty Cards" line.

Reviewed-by: jwilhelm, brutisso
2014-03-24 15:30:40 +01:00
Thomas Schatzl 84b78d9a81 8027295: Free CSet takes ~50% of young pause time
Improve fast card cache iteration and avoid taking locks when freeing the collection set.

Reviewed-by: brutisso
2014-03-24 15:30:36 +01:00
Thomas Schatzl 04075dff2c 8035406: Improve data structure for Code Cache remembered sets
Change the code cache remembered sets data structure from a GrowableArray to a chunked list of nmethods. This makes the data structure more amenable to parallelization, and decreases freeing time.

Reviewed-by: mgerdin, brutisso
2014-03-24 15:30:14 +01:00
Thomas Schatzl 0ed35536e3 8027476: Improve performance of Stringtable unlink
8027455: Improve symbol table scan times during gc pauses

Parallelize string table and symbol table scan during remark and full GC. Some additional statistics output if the experimental flag G1TraceStringSymbolTableScrubbing is set.

Reviewed-by: mgerdin, coleenp, brutisso
2014-01-20 11:47:07 +01:00
Mikael Vidstedt e64b2eeaa0 8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
Copyright year updated for files modified during 2013

Reviewed-by: twisti, iveresov
2013-12-24 11:48:39 -08:00
Thomas Schatzl 6f46da6198 8027756: assert(!hr->isHumongous()) failed: code root in humongous region?
Change checks for isHumongous() to continuesHumongous() as installing a code root for a humongous object is valid, but not for continuations of humongous objects. Cleaned up asserts.

Reviewed-by: jmasa, tamao
2013-11-07 15:17:10 +01:00
Per Lidén 908dd54639 8023158: hotspot/test/gc/7168848/HumongousAlloc.java fails 14 full gcs, expect 0 full gcs
Reviewed-by: brutisso, tschatzl
2013-10-15 11:38:47 +02:00
Thomas Schatzl f144f37f49 8025441: G1: assert "assert(thread < _num_vtimes) failed: just checking" fails when G1ConcRefinementThreads > ParallelGCThreads
The initialization for the remembered set summary data structures used the wrong thread count, i.e. number of worker threads instead of number of refinement threads.

Reviewed-by: brutisso
2013-09-30 12:43:59 +02:00
Thomas Schatzl bd9ffce267 8014078: G1: improve remembered set summary information by providing per region type information
Add memory consumption breakdown on a per region type in the G1 remembered set summary statistics. This simplifies remembered set memory consumption analysis.

Reviewed-by: brutisso
2013-09-26 12:49:45 +02:00
Thomas Schatzl 93e5db7033 8020123: Test gc/g1/TestPrintRegionRememberedSetInfo.java fails with "test result: Error. No action after @build"
Remove the @build tag and replace it by a @run tag so that the test gets executed

Reviewed-by: brutisso, mgerdin
2013-07-24 10:07:37 +02:00
Thomas Schatzl 54964edefa 8013895: G1: G1SummarizeRSetStats output on Linux needs improvemen
Fixed the output of G1SummarizeRSetStats: too small datatype for the number of concurrently processed cards, added concurrent remembered set thread time retrieval for Linux and Windows (BSD uses os::elapsedTime() now), and other cleanup. The information presented during VM operation is now relative to the previous output, not always cumulative if G1SummarizeRSetStatsPeriod > 0. At VM exit, the code prints a cumulative summary.

Reviewed-by: johnc, jwilhelm
2013-05-28 09:32:06 +02:00
John Cuthbertson 5838d847a1 8010738: G1: Output for full GCs with +PrintGCDetails should contain perm gen size/meta data change info
Include metaspace information (used, allocated, reserved) in the PrintGCDetails output for full GCs.

Reviewed-by: poonam, jmasa, brutisso
2013-05-16 09:24:26 -07:00
Thomas Schatzl 5ebe77bb6b 8014240: G1: Add remembered set size information to output of G1PrintRegionLivenessInfo
Improve the output of G1PrintRegionLivenessInfo by adding a per-region remembered set size information column

Reviewed-by: jwilhelm, johnc
2013-05-16 13:02:33 +02:00
Bengt Rutisson a8ad116e49 8013872: G1: HeapRegionSeq::shrink_by() has invalid assert
Refactored shrink_by() to only use region counts and not byte sizes

Reviewed-by: johnc, tschatzl
2013-05-06 21:30:34 +02:00
Bengt Rutisson 36c195270d 8013791: G1: G1CollectorPolicy::initialize_flags() may set min_alignment > max_alignment
Make sure max alignemnt is at least as large as min alignment

Reviewed-by: johnc, jmasa, tschatzl
2013-05-06 09:16:14 +02:00