158 Commits

Author SHA1 Message Date
Kim Barrett
b78e96713b 8136627: Backout JDK-8133818 Additional number of processed references printed with -XX:+PrintReferenceGC after JDK-8047125
Reviewed-by: brutisso
2015-09-16 16:25:02 +02:00
Jon Masamitsu
807c69046a 8081629: CMS split_block() does not correctly fix up block-offset-table for large blocks
Reviewed-by: tschatzl, ysr
2015-05-25 19:26:23 -07:00
Erik Helin
c00b15bccd 8135253: Add push method to CollectionSetChooser
Reviewed-by: mgerdin, tschatzl
2015-09-11 13:20:05 +02:00
Erik Helin
89ec770497 8135260: Split G1CollectorPolicy::finalize_cset into two parts
Reviewed-by: tschatzl, mgerdin
2015-09-11 10:02:35 +02:00
Kim Barrett
fea40d07b4 8135209: Avoid abutting string literals and identifiers
Add spaces between string literals and identifiers.

Reviewed-by: brutisso, pliden
2015-09-09 14:31:12 -04:00
Sangheon Kim
7ec42b2f7a 8135025: Error message is repeated for large value at G1ConcRefinementThreads
Changed error handling when G1ConcRefinementThreads creation failed

Reviewed-by: jwilhelm, kbarrett, tschatzl
2015-09-09 09:19:32 -07:00
Mikael Gerdin
6f11efbbb4 8135154: Move cards scanned and surviving young words aggregation to G1ParScanThreadStateSet
Reviewed-by: tschatzl, ehelin
2015-09-09 14:22:45 +02:00
Mikael Gerdin
2dbd4dd578 8135152: Create a G1ParScanThreadStateSet class for managing G1 GC per thread states
Reviewed-by: tschatzl, ehelin
2015-09-09 10:34:22 +02:00
Kim Barrett
802664728f 8134797: Remove explicit casts in CollectorPolicy hierarchy
Removed the explicit casts.

Reviewed-by: jwilhelm, tschatzl, pliden
2015-09-08 16:00:34 -04:00
Jesper Wilhelmsson
49fb91407d 8134626: Misc cleanups after generation array removal
Reviewed-by: david, dholmes, tschatzl
2015-08-18 21:32:21 +02:00
Jesper Wilhelmsson
1d4ed72ab1 8130823: VerifyRememberedSets is an expensive nop in product builds
Reviewed-by: jmasa, tschatzl
2015-09-04 13:23:10 +02:00
Mikael Gerdin
cf47fb3a23 8135012: Don't use G1RootProcessor when scanning remembered sets
Reviewed-by: jmasa, ecaspole
2015-09-04 09:47:35 +02:00
Thomas Schatzl
83e4800c47 8134857: Inconsistency in maximum TLAB/PLAB size and humongous object size
Align TLAB/PLAB size with exact humongous object size threshold, not that value -1.

Reviewed-by: jmasa, dfazunen
2015-09-04 08:36:13 +02:00
Sangheon Kim
c091c7348a 8134972: [BACKOUT] GC: implement ranges (optionally constraints) for those flags that have them missing
Reviewed-by: jwilhelm
2015-09-02 17:49:46 -07:00
Kim Barrett
8ebc8387ba 8134806: Clean up write_ref_field_work
Remove unnecessary pure virtual decl and default argument values.

Reviewed-by: jwilhelm, tbenson, jmasa
2015-09-02 11:41:42 -04:00
Thomas Schatzl
f55b656f2d Merge 2015-09-02 16:16:58 +02:00
Y. Srinivas Ramakrishna
62ccb0305a 8133818: Additional number of processed references printed with -XX:+PrintReferenceGC after JDK-8047125
Test contributed by brutisso

Reviewed-by: tonyp, tschatzl
2015-09-02 11:56:10 +02:00
Thomas Schatzl
fbfed13ec2 8134858: Remove G1 specific checking of Young/OldPLABSize in G1CollectorPolicy constructor
Remove obsolete and wrong code.

Reviewed-by: mgerdin, brutisso
2015-09-02 09:57:03 +02:00
Staffan Friberg
96823ab211 8066443: Add G1 support for promotion event
Reviewed-by: tschatzl
2015-09-02 09:51:05 +02:00
Stefan Johansson
dada9bc32c 8129417: Oop iteration clean-up to remove oop_ms_follow_contents
Reviewed-by: pliden, ehelin
2015-09-02 09:14:04 +02:00
Per Lidén
fd814172ac Merge 2015-09-01 14:17:53 +02:00
Per Lidén
ee626f77ab 8134738: Remove CollectorPolicy::Name
Reviewed-by: brutisso, mgerdin
2015-09-01 13:13:19 +02:00
Thomas Schatzl
8f2026345c 8067341: Modify PLAB sizing algorithm to waste less
Change the G1 PLAB resizing algorithm to waste less memory by being more conservative about the PLAB sizes.

Reviewed-by: ecaspole, jmasa
2015-09-01 10:53:29 +02:00
Sangheon Kim
cf5132e887 8078555: GC: implement ranges (optionally constraints) for those flags that have them missing
Add ranges and constraint functions for GC flags.

Reviewed-by: jmasa, kbarrett, gziemski, ddmitriev, drwhite
2015-08-31 11:51:29 -07:00
Kim Barrett
15196341a5 8131330: G1CollectedHeap::verify_dirty_young_list fails with assert
Use assembly loop to avoid compiler optimization into memset

Reviewed-by: ecaspole, tschatzl
2015-08-31 13:06:01 -04:00
Kim Barrett
7706e36194 8072817: CardTableExtension kind() should be BarrierSet::CardTableExtension
Use BarrierSet::CardTableForRS where needed, and update concrete bs tags.

Reviewed-by: jwilhelm, jmasa
2015-08-18 17:48:35 -04:00
Erik Helin
6239649ec3 8134509: G1ParCopyClosure does not need a ReferenceProcessor
Reviewed-by: stefank, mgerdin
2015-08-28 09:05:46 +02:00
Erik Helin
ec7659c972 8134504: Remove usage of EvacuationInfo from G1CollectorPolicy
Reviewed-by: mgerdin, jwilhelm
2015-08-27 16:28:05 +02:00
Jiangli Zhou
9ee2b211f9 8131734: assert(!is_null(v)) failed: narrow klass value can never be zero with -Xshared:auto
Handle shared string mapping failures.

Co-authored-by: Tom Benson <tom.benson@oracle.com>
Reviewed-by: tschatzl, kbarrett, ddmitriev, hseigel
2015-08-25 17:22:56 -04:00
Thomas Schatzl
494872e535 8133456: HeapRegionManager::shrink_by() iterates suboptimally across regions
Reviewed-by: brutisso, tbenson
2015-08-24 16:32:50 +02:00
Thomas Schatzl
472a3333a8 8067336: Allow that PLAB allocations at the end of regions are flexible
PLAB allocations may return a buffer that is between minimum size (current allocation) and the desired size. This allows removes a large amount of fragmentation at the end of regions.

Reviewed-by: tbenson, mgerdin
2015-08-24 16:27:41 +02:00
Thomas Schatzl
c91c77abd2 8067339: PLAB reallocation might result in failure to allocate object in that recently allocated PLAB
Properly size the PLAB to make sure that the object to allocate always has enough space in it.

Reviewed-by: mgerdin, brutisso
2015-08-20 15:17:43 +02:00
Thomas Schatzl
041c76d48b 8073146: G1 merges thread local age tables too early with global age table
Move merging of age and survivor table to the end of GC.

Reviewed-by: mgerdin, david
2015-08-20 15:17:43 +02:00
Thomas Schatzl
6cca258181 8040162: Avoid reallocating PLABs between GC phases in G1
Allocate G1ParScanThreadState at the start of GC and only deallocate at the end of GC. This automatically keeps the current PLAB intact without flushing it (and loosing lots of memory) for every reallocation.

Reviewed-by: david, mgerdin
2015-08-20 15:17:43 +02:00
Thomas Schatzl
4a849fb21c 8133530: Add JFR event for evacuation statistics
Introduce two new JFR events for young/old generation allocation statistics based on previous changes.

Reviewed-by: ehelin, mgerdin
2015-08-20 15:17:41 +02:00
Thomas Schatzl
0ade675b8b 8073013: Add detailed information about PLAB memory usage
Track and provide information about direct allocation, region end waste and failure waste for G1.

Reviewed-by: jmasa, david, ehelin, mgerdin
2015-08-19 13:59:39 +02:00
Thomas Schatzl
43a6ce61de 8133470: Uses of Atomic methods in plab.hpp should be moved to .inline.hpp file
Fix include file dependencies according to general guidelines for plab.hpp

Reviewed-by: ehelin, mgerdin
2015-08-19 13:50:50 +02:00
Thomas Schatzl
8c2da662ff 8003237: G1: Reduce unnecessary (and failing) allocation attempts when handling an evacuation failure
Remember for every generation whether the memory for that generation has already been exhausted. If so, do not try to get a new region for these generations. Further, if the last generation is full, early exit from copy_to_survivor_space.

Reviewed-by: jmasa, brutisso
2015-08-19 13:47:40 +02:00
Erik Helin
9bc2e29405 8133825: Remove the class G1CollectorPolicyExt
Reviewed-by: jwilhelm, ecaspole
2015-08-20 10:27:04 +02:00
Eric Caspole
3c41a37bd8 8133349: CMS: Assert failed: Ctl pt invariant
_survivor_chunk_array should be sized based on PLAB::min_size() not ThreadLocalAllocBuffer::min_size()

Reviewed-by: tschatzl, jwilhelm
2015-08-18 14:04:24 -04:00
David Lindholm
4445cbb273 8133553: Running with -XX:+UseParallelGC -XX:OldSize=30k crashes jvm
Reviewed-by: jwilhelm, sjohanss
2015-08-17 10:43:11 +02:00
Stefan Karlsson
0e252b2a93 8087324: Use semaphores when starting and stopping GC task threads
Reviewed-by: jmasa, sjohanss
2015-06-29 11:11:12 +02:00
Stefan Karlsson
e25bcfd3d3 8087323: Unify and split the work gang classes
Reviewed-by: jmasa, sjohanss
2015-06-29 11:09:39 +02:00
Axel Siebenborn
d32b06427d 8133121: Move implementation of process_grey_object to concurrentMark.inline.hpp
Move implementation of process_grey_object to inline.hpp

Reviewed-by: kbarrett, simonis
2015-08-13 09:32:01 +02:00
David Lindholm
b206c669f7 8133193: Memory leak in G1 because G1RootProcessor doesn't have desctructor
Reviewed-by: mgerdin, tschatzl
2015-08-12 16:32:29 +02:00
Kim Barrett
a4537791a8 Merge 2015-08-08 00:27:39 +02:00
Thomas Schatzl
c6cfb3a7fd 8133042: Remove some direct accesses of G1Allocator to G1CollectedHeap members
Remove direct access to private members of G1CollectedHeap from G1Allocator and G1ArchiveAllocator. Allows removal of friend delcarations.

Reviewed-by: kbarrett, jmasa, jwilhelm
2015-08-07 15:37:07 +02:00
Eric Caspole
bcca305c14 8078904: CMS: Assert failed: Ctl pt invariant
Survivor rescan array now baed on MinTLABSize so all entries will fit

Reviewed-by: tschatzl, kbarrett
2015-08-07 09:15:42 -04:00
Thomas Schatzl
c2d0a8dbd0 8133047: Rename G1ParScanThreadState::_queue_num to _worker_id
Reviewed-by: jmasa, jwilhelm
2015-08-06 15:52:33 +02:00
Thomas Schatzl
183850cec4 8133043: Clean up code related to termination stats printing
Reformat termination stats related code to make it look more similar to existing code.

Reviewed-by: jwilhelm, jmasa
2015-08-06 15:49:52 +02:00