102 Commits

Author SHA1 Message Date
Kim Barrett
f262092fd9 8233822: VM_G1CollectForAllocation should always check for upgrade to full
Move upgrade check into do_collection_pause_at_safepoint.

Reviewed-by: tschatzl, sangheki
2020-01-29 15:48:22 -05:00
Thomas Schatzl
fab3122111 8214277: Use merged G1ArchiveRegionMap for open and closed archive heap regions
Reviewed-by: kbarrett, jiangli
2020-01-09 21:57:18 +01:00
Stefan Johansson
a20fa5b995 8235427: Remove unnecessary parameters from G1CollectedHeap::free_region and HeapRegion::hr_clear
Reviewed-by: tschatzl, kbarrett
2019-12-11 12:12:39 +01:00
Stefan Karlsson
5b155f05e7 8235324: Dying objects are published from users of CollectedHeap::object_iterate
Reviewed-by: pliden, eosterlund, sjohanss, rkennke
2019-12-04 11:30:32 +01:00
Stefan Johansson
9cabfa82ff 8165443: Free Collection Set serial phase takes very long on large heaps
Reviewed-by: tschatzl, kbarrett
2019-12-09 10:26:41 +01:00
Stefan Johansson
4266daf9c9 8141637: Parallelize single threaded heap region iteration during Pre Evacuate Collection Set
Reviewed-by: tschatzl, lkorinth
2019-11-27 12:18:40 +01:00
Thomas Schatzl
9a4c25731e 8228609: G1 copy cost prediction uses used vs. actual copied byte
Let the object copy cost predictor use the actual copied bytes as input for the prediction instead of the used bytes.

Reviewed-by: kbarrett, sjohanss
2019-11-21 11:42:54 +01:00
Per Lidén
08822b4e05 8234437: Remove CollectedHeap::safe_object_iterate()
Reviewed-by: kbarrett, sjohanss
2019-11-20 10:37:46 +01:00
Kim Barrett
7e2ec3bdc3 8233280: Remove GCLockerInvokesConcurrent
Remove use and make option obsolete.

Reviewed-by: tschatzl, sjohanss
2019-11-15 16:58:29 -05:00
Kim Barrett
19bed24b1f 8232588: G1 concurrent System.gc can return early or late
8233279: G1: GCLocker GC with +GCLockerInvokesConcurrent spins while cycle in progress

Refactor G1CH::try_collect and fix bugs with concurrent collections.

Reviewed-by: tschatzl, sjohanss
2019-11-13 18:00:30 -05:00
Sangheon Kim
46c3d43f83 8220312: Implementation: NUMA-Aware Memory Allocation for G1, Logging (3/3)
Reviewed-by: kbarrett, sjohanss, tschatzl
2019-11-13 10:51:41 -08:00
Sangheon Kim
eaa6355cb0 8220311: Implementation: NUMA-Aware Memory Allocation for G1, Survivor (2/3)
Reviewed-by: kbarrett, sjohanss, tschatzl
2019-11-13 10:49:32 -08:00
Sangheon Kim
52116d808c 8220310: Implementation: NUMA-Aware Memory Allocation for G1, Mutator (1/3)
Reviewed-by: kbarrett, sjohanss, tschatzl, pliden
2019-11-13 10:49:12 -08:00
Thomas Schatzl
1c9dd15716 8232260: Remove g1 prefix in G1CollectedHeap::g1_hot_card_cache() getter
Reviewed-by: kbarrett, sjohanss
2019-10-16 12:36:44 +02:00
Thomas Schatzl
f92526e6fd 8231189: Rename worker_i parameters to worker_id
Reviewed-by: kbarrett, sjohanss
2019-09-23 11:37:08 +02:00
Kim Barrett
40565a845c 8230404: Refactor logged card refinement support in G1DirtyCardQueueSet
Separate concurrent refinement from STW refinement.

Reviewed-by: sjohanss, tschatzl
2019-09-06 13:38:55 -04:00
Erik Österlund
f869706f5f 8224815: Remove non-GC uses of CollectedHeap::is_in_reserved()
Reviewed-by: stefank, coleenp
2019-09-05 08:26:49 +02:00
Erik Österlund
855f16ef50 8229278: Improve hs_err location printing to assume less about GC internals
Reviewed-by: stefank, kbarrett
2019-08-28 11:19:09 +02:00
Kim Barrett
0b9a90e0d1 8229044: G1RedirtyCardsQueueSet should be local to a collection
Stack allocate redirty qsets in do_collection_pause_at_safepoint.

Reviewed-by: tschatzl, sangheki
2019-08-16 14:46:52 -04:00
Stefan Karlsson
ae5615c614 8229258: Rework markOop and markOopDesc into a simpler mark word value carrier
Reviewed-by: rkennke, coleenp, kbarrett, dcubed
2019-08-06 10:48:21 +02:00
Kim Barrett
4b3c528140 8162929: Enqueuing dirty cards into a single DCQS during GC does not scale
Refactor into G1RedirtyCardsQueue[Set] and G1DirtyCardQueueSet

Reviewed-by: tschatzl, sangheki
2019-07-19 16:47:11 -04:00
Thomas Schatzl
5a0525a560 8227671: G1: assert_used_and_recalculate_used_equal performs work in product builds
Reviewed-by: kbarrett, sangheki
2019-07-17 16:33:19 +02:00
Thomas Schatzl
d46d9318c1 8213108: Improve work distribution during remembered set scan
Before scanning the heap for roots into the collection set, merge them into a single remembered set (card table) and do work distribution based on location like other collectors do.

Reviewed-by: kbarrett, lkorinth
2019-06-27 11:48:32 +02:00
Thomas Schatzl
55492a7d8b 8225418: G1: region attribute remembered set state disagrees with actual remembered set state
Keep remembered set update information when updating region attributes when abandoning the remaining collection set after mixed gc.

Reviewed-by: kbarrett, mdoerr
2019-06-13 11:54:55 +02:00
Thomas Schatzl
4b086a28a5 8222492: G1 unnecessarily scans remembered set cards for regions that already have been evacuated
Filter out cards from the current collection set during evacuation increments.

Reviewed-by: kbarrett, sangheki
2019-05-18 22:11:25 +02:00
Thomas Schatzl
0a6207fe69 8224038: Fix remaining InCSetState mentions
Reviewed-by: kbarrett
2019-05-17 12:33:37 +02:00
Thomas Schatzl
3d149df158 8200545: Improve filter for enqueued deferred cards
Reviewed-by: kbarrett, sangheki
2019-05-14 15:36:26 +02:00
Sangheon Kim
cb62a78492 8221509: Refactor assert( G1CollectedHeap::used() == recalculate_used() ) with better message
Reviewed-by: tschatzl, manc
2019-05-06 14:19:48 -07:00
Stefan Karlsson
087c03a0c7 8198505: Remove CollectorPolicy and its subclasses
Reviewed-by: pliden, shade
2019-04-15 11:47:46 +02:00
Sangheon Kim
bb31c7d085 8218049: Survivor MemoryMXBean used() size granularity is region based
Reviewed-by: tschatzl, kbarrett
2019-04-08 12:15:40 -07:00
Thomas Schatzl
884545e54f 8218668: Clean up evacuation of optional collection set
Better integrate optional collection set evacuation into the existing evacuation scheme, fixing a few minor issues with the initial implementation.

Reviewed-by: kbarrett, sangheki
2019-04-08 20:37:52 +02:00
Per Lidén
a7dd794beb 8221648: Remove CollectedHeap::is_in_closed_subset()
Reviewed-by: kbarrett, tschatzl
2019-04-02 10:04:25 +02:00
Stefan Karlsson
abb2d67803 8220610: Make CollectedHeap nmethod functions pure virtual
Reviewed-by: shade
2019-04-01 18:34:39 +02:00
Thomas Schatzl
efe03d5a90 8219100: Improve do_collection_pause_at_safepoint
Reviewed-by: kbarrett, sangheki
2019-03-25 14:11:09 +01:00
Stefan Karlsson
2370adc703 8220343: Move scavenge_root_nmethods from shared code
Reviewed-by: kvn, eosterlund
2019-03-14 09:15:51 +01:00
Per Lidén
c6917cc27e 8219817: Remove unused CollectedHeap::block_size()
Reviewed-by: shade, stefank
2019-03-13 11:31:00 +01:00
Thomas Schatzl
3d9de2e6f2 8219856: Spell out G1CollectorPolicy::is_hetero_heap
Reviewed-by: sangheki, kbarrett
2019-03-04 11:49:16 +01:00
Thomas Schatzl
bfaeb63761 8219748: Add and use getter for the timing object in G1
Reviewed-by: shade, kbarrett
2019-03-04 11:49:16 +01:00
Thomas Schatzl
5fe5d0a90a 8219747: Remove g1_ prefix to g1_remset and g1_policy members in G1CollectedHeap
Reviewed-by: shade, sangheki
2019-03-04 11:49:16 +01:00
Thomas Schatzl
e68d585a8d 8218880: G1 crashes when issuing a periodic GC while the GCLocker is held
Do not wait for the GC locker in the periodic GC thread as the GC locker being held is an indication for being busy anyway.

Reviewed-by: kbarrett, shade
2019-03-04 11:49:16 +01:00
Thomas Schatzl
eaab45a8b8 8219096: Merge print_termination_stats code with current logging
Reviewed-by: lkorinth, kbarrett
2019-02-20 14:30:33 +01:00
Kim Barrett
d2c690e80b 8218089: Rename DirtyCardQueue et al to follow usual G1 naming conventions
Move files and rename classes.

Reviewed-by: tschatzl, lkorinth
2019-02-13 17:38:14 -05:00
Kim Barrett
1fcbd0cd0d 8217474: Remove WhiteBox.getConcurrentGCPhases()
Remove function and supporting infrastructure.

Reviewed-by: shade, tschatzl
2019-02-05 16:46:49 -05:00
Thomas Schatzl
d800361151 8213229: Investigate treating StringTable as weak in young collections
Reviewed-by: zgu, kbarrett
2019-01-29 11:30:17 +01:00
Thomas Schatzl
0c352cc57f 8217374: Rename G1 EvacuationInfo class to G1EvacuationInfo
Reviewed-by: phh, kbarrett
2019-01-21 12:19:00 +01:00
Coleen Phillimore
154a1a02bf 8216167: Update include guards to reflect correct directories
Use script and some manual fixup to fix directores names in include guards.

Reviewed-by: lfoltan, eosterlund, kbarrett
2019-01-10 15:13:51 -05:00
Kishor Kharbas
d580e2eed2 8211425: Allocation of old generation of java heap on alternate memory devices - G1 GC
8202286: Allocation of old generation of Java heap on alternate memory devices

Enable an experimental feature in HotSpot JVM to allocate old generation of G1 GC on an alternative memory device, such as NV-DIMMs.

Reviewed-by: sangheki, sjohanss
2018-12-21 08:18:59 -08:00
Thomas Schatzl
7223ed2205 8152724: Sum of eden before GC and current survivor capacity may be larger than heap size
Limit the maximum survivor size for a given GC to the remaining number of free regions.

Reviewed-by: sjohanss, sangheki
2018-12-12 12:00:02 +01:00
Stefan Johansson
37f135132e 8213890: Implementation of JEP 344: Abortable Mixed Collections for G1
Co-authored-by: Erik Helin <erik.helin@oracle.com>
Reviewed-by: tschatzl, kbarrett
2018-12-07 13:54:45 +01:00
Thomas Schatzl
0f0b8626fc 8213996: Remove one of the SparsePRT entry tables
Remove unused functionality in SparsePRT

Reviewed-by: shade, sjohanss
2018-11-28 11:06:58 +01:00