Commit graph

95 commits

Author SHA1 Message Date
Stefan Karlsson
2370adc703 8220343: Move scavenge_root_nmethods from shared code
Reviewed-by: kvn, eosterlund
2019-03-14 09:15:51 +01:00
Man Cao
e309fb9a3a 8212206: Refactor AdaptiveSizePolicy to separate out code related to GC overhead
Move check_gc_overhead_limit() and related code to its own class

Reviewed-by: tschatzl, pliden, jiangli
2019-01-15 15:59:47 -08:00
Chihiro Ito
6773177000 8214236: sun.gc.collector.2.name should be changed
Reviewed-by: pliden, tschatzl
2019-02-12 08:56:03 +09:00
Coleen Phillimore
73ccdf3557 8213753: SymbolTable is double walked during class unloading and clean up table timing in do_unloading
Remove gc timing for short runtime cleanup triggering; make symbol table cleaning triggered automatically on unloading

Reviewed-by: shade, stefank, gziemski
2019-01-31 10:29:53 -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
Kishor Kharbas
28f71c2c72 8211424: Allocation of old generation of java heap on alternate memory devices - Parallel 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 Parallel GC on an alternative memory device, such as NV-DIMMs.

Reviewed-by: sangheki, sjohanss
2018-12-21 08:23:55 -08:00
Zhengyu Gu
b9769c732e 8204947: Port ShenandoahTaskTerminator to mainline and make it default
Reviewed-by: tschatzl, rkennke
2018-12-07 13:55:06 -05:00
Erik Österlund
e39c5811b5 8210330: Make CLD claiming allow multiple claim bits
Reviewed-by: pliden, coleenp
2018-10-16 13:16:11 +02:00
Leo Korinth
e898052f3b 8211447: Replace oop_pc_update_pointers with oop_iterate and closure
Reviewed-by: sjohanss, tschatzl
2018-10-12 12:14:01 +02:00
Leo Korinth
78fe66c3bb 8211446: Replace oop_pc_follow_contents with oop_iterate and closure
Reviewed-by: sjohanss, tschatzl
2018-10-12 12:13:06 +02:00
Man Cao
33c38f2ccb 8210716: Detailed GC logging request misses some
Changed log tags from (heap, ergo) to (gc, ergo, heap).

Reviewed-by: kbarrett, tschatzl
2018-10-01 20:16:55 -04:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -04:00
Per Lidén
a8703f9803 8210713: Let CollectedHeap::ensure_parsability() take care of TLAB statistics gathering
Reviewed-by: eosterlund, sjohanss
2018-09-19 14:09:11 +02:00
Coleen Phillimore
dc556f4086 8209738: Remove ClassLoaderDataGraph::*oops_do functions
Make walking CLDG more consistent.

Reviewed-by: dholmes, tschatzl
2018-08-21 09:33:41 -04:00
Thomas Schatzl
d702d5f8d2 8208669: GC changes to allow enabling -Wreorder
Reviewed-by: kbarrett
2018-08-08 15:31:06 +02:00
Stefan Karlsson
11813888b8 8204540: Automatic oop closure devirtualization
Reviewed-by: kbarrett, eosterlund
2018-05-26 06:59:49 +02:00
Thomas Schatzl
7f9bbfa767 8043575: Dynamically parallelize reference processing work
In G1 automatically set the number of parallel Reference processing threads

Co-authored-by: Sangheon Kim <sangheon.kim@oracle.com>
Reviewed-by: sangheki, kbarrett
2018-06-18 12:11:59 +02:00
Thomas Schatzl
1a0553e4eb 8202845: Refactor reference processing for improved parallelism
Fold reference processing's nine phases into four to decrease startup and termination time of this phase.

Reviewed-by: kbarrett, sjohanss
2018-05-29 09:26:00 +02:00
Thomas Schatzl
9455a89d47 8204617: ParallelGC parallel reference processing does not set MT degree in reference processor
Reviewed-by: sangheki, kbarrett
2018-06-11 12:09:57 +02:00
Sangheon Kim
4fb9d6717d 8204094: assert(worker_i < _length) failed: Worker 15 is greater than max: 11 at ReferenceProcessorPhaseTimes
Reviewed-by: kbarrett, tschatzl
2018-06-04 21:20:16 -07:00
Coleen Phillimore
e3a3941c9a 8202813: Move vm_weak processing from SystemDictionary to WeakProcessor
SystemDictionary has all strong roots.  The weak oop_storage is processed by the WeakProcessor so it can be scanned and cleared concurrently and/or by parallel threads.

Reviewed-by: kbarrett, sjohanss
2018-05-29 15:50:27 -04:00
Kim Barrett
6c20824cda 8203028: Simplify reference processing in light of JDK-8175797
Removed special handling of Reference.next

Reviewed-by: tschatzl, sjohanss, mchung
2018-05-26 03:11:50 -04:00
Stefan Karlsson
c590979683 8202649: Move the Parallel GC specific task creation functions out of Threads
Reviewed-by: ehelin, pliden
2018-05-07 16:12:07 +02:00
Thomas Schatzl
035d0190a3 8202017: Merge Reference Enqueuing phase with phase 3 of Reference processing
Do reference enqueuing work directly in phase 3 after every Reference.

Reviewed-by: kbarrett, sangheki
2018-05-08 10:01:29 +02:00
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Coleen Phillimore
204ba9a580 8202447: Fix unloading_occurred to mean unloading_occurred
Nmethod unloading does not need to test for jvmti to set unloading_occurred, nor do we need to clean weak Klasses in metadata if unloading does not occur.

Reviewed-by: sspitsyn, rehn
2018-04-27 15:00:04 -04:00
Thomas Schatzl
deb5bf745f 8202021: Improve variable naming in ReferenceProcesso
Reviewed-by: sangheki, sjohanss
2018-05-03 14:10:08 +02:00
Thomas Schatzl
945701e945 8201492: Properly implement non-contiguous generations for Reference discovery
Collectors like G1 implementing non-contiguous generations previously used an inexact but conservative area for discovery. Concurrent and STW reference processing could discover the same reference multiple times, potentially missing referents during evacuation. So these collectors had to take extra measures while concurrent marking/reference discovery has been running. This change makes discovery exact for G1 (and any collector using non-contiguous generations) so that concurrent discovery and STW discovery discover on strictly disjoint memory areas. This means that the mentioned situation can not occur any more, and extra work is not required any more too.

Reviewed-by: kbarrett, sjohanss
2018-05-03 14:09:00 +02:00
Coleen Phillimore
c215aa5889 8201537: Remove is_alive closure from Klass::is_loader_alive()
Remove is_alive closure from callers of Klass::is_loader_alive so that cleaning metadata doesn't require GC closure.

Reviewed-by: adinn, stefank
2018-04-18 13:37:39 -04:00
Stefan Karlsson
1a1aecd166 8200106: Move NoSafepointVerifier out from gcLocker.hpp
Reviewed-by: coleenp
2018-03-23 18:54:12 +01:00
Stefan Karlsson
f89abe4589 8199946: Move load/store and encode/decode out of oopDesc
Reviewed-by: eosterlund, coleenp, tschatzl
2018-03-15 21:24:10 +01:00
Thomas Stuefe
da674f0d0d 8199430: Rename MetaspaceAux to something more meaningful
Reviewed-by: zgu, coleenp
2018-03-11 07:11:03 +01:00
Stefan Karlsson
d42acfd37b 8199319: Remove handles.inline.hpp include from reflectionUtils.hpp
Reviewed-by: hseigel, dholmes
2018-03-08 19:10:25 +01:00
Erik Österlund
95d34d138d 8195142: Refactor out card table from CardTableModRefBS to flatten the BarrierSet hierarchy
Reviewed-by: stefank, coleenp, kvn, ehelin
2018-02-26 09:34:12 +01:00
Stefan Karlsson
f408526f30 8198515: Extract SoftReferencePolicy code out of CollectorPolicy
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:07 +01:00
Erik Österlund
432a71e564 8198286: Direct memory accessors in typeArrayOop.hpp should use Access API
Reviewed-by: pliden, rkennke
2018-02-22 10:39:42 +01:00
Roman Kennke
3f3f0cb67e 8191564: Refactor GC related servicability code into GC specific subclasses
Reviewed-by: ehelin, eosterlund
2017-11-30 13:40:07 +01:00
Jamsheed Mohammed C M
10a1edcc22 8152470: Add COMPILER2_OR_JVMCI definition
Defined(COMPILER2) || INCLUDE_JVMCI changed replaced with COMPILER2_OR_JVMCI

Reviewed-by: kvn
2017-11-06 21:28:03 -08:00
Stefan Karlsson
d129d1cdf2 8189748: More precise closures for WeakProcessor::weak_oops_do calls
Reviewed-by: pliden, sjohanss
2017-10-23 11:20:53 +02:00
Stefan Karlsson
3fbc4aec64 8189359: Move native weak oops cleaning out of ReferenceProcessor
Reviewed-by: pliden, kbarrett
2017-10-18 21:13:35 +02:00
Coleen Phillimore
39b068db11 8188220: Remove Atomic::*_ptr() uses and overloads from hotspot
With the new template functions these are unnecessary.

Reviewed-by: kbarrett, dholmes, eosterlund
2017-10-16 22:36:06 -04:00
Coleen Phillimore
73a801bc43 8186777: Make Klass::_java_mirror an OopHandle
Add indirection for fetching mirror so that GC doesn't have to follow CLD::_klasses

Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Reviewed-by: hseigel, thartmann, eosterlund, stefank
2017-10-03 16:42:04 -04:00
Erik Österlund
394e6a8318 8186838: Generalize Atomic::inc/dec with templates
Reviewed-by: kbarrett, coleenp, dholmes
2017-09-26 14:05:27 +02:00
Stefan Johansson
52c73dd8a9 8184286: print_tracing_info() does not use Unified Logging for output
Reviewed-by: ehelin, sangheki
2017-09-21 14:32:05 +02:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00
Renamed from hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp (Browse further)