60 Commits

Author SHA1 Message Date
Stefan Karlsson
cb58cddccb 8221558: Remove obsolete uses of OopStorage::ParState<'false, false> _par_state
Reviewed-by: pliden, tschatzl
2019-04-01 18:36:12 +02:00
Stefan Karlsson
c2d4f10483 8220609: Cleanups in ScavengableNMethods
Reviewed-by: pliden, eosterlund
2019-03-18 15:21:33 +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
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
Tobias Hartmann
3cf788ab73 8219232: Unit of concurrent active time logging is wrong
Changed value from seconds to milliseconds.

Reviewed-by: shade
2019-02-18 15:33:43 +01: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
Zhengyu Gu
b9769c732e 8204947: Port ShenandoahTaskTerminator to mainline and make it default
Reviewed-by: tschatzl, rkennke
2018-12-07 13:55:06 -05:00
Man Cao
df4b7015bf 8213224: Move code related to GC threads calculation out of AdaptiveSizePolicy
Consolidate code related to GC threads calculation into a single class

Reviewed-by: tschatzl, pliden
2018-12-07 12:46:31 +08:00
Thomas Schatzl
eb5557a98e 8214791: Consistently name gc files containing VM operations
Name all gc files containing VM operations according to a <gc>VMOperations.?pp.

Reviewed-by: coleenp, dholmes
2018-12-06 15:44:13 +01:00
Erik Österlund
e39c5811b5 8210330: Make CLD claiming allow multiple claim bits
Reviewed-by: pliden, coleenp
2018-10-16 13:16:11 +02:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -04:00
Coleen Phillimore
eb9259138f 8210155: Lock ClassLoaderDataGraph
In preparation for concurrent class unloading.

Reviewed-by: hseigel, eosterlund
2018-08-31 07:03:46 -04:00
Kim Barrett
75a8e7d4e2 8210119: Rename SubTasksDone::is_task_claimed
Renamed to try_claim_task and inverted result.

Reviewed-by: coleenp, sjohanss
2018-08-30 16:16:19 -04:00
Thomas Schatzl
d702d5f8d2 8208669: GC changes to allow enabling -Wreorder
Reviewed-by: kbarrett
2018-08-08 15:31:06 +02:00
Zhengyu Gu
4555c28590 8205921: Optimizing best-of-2 work stealing queue selection
Bias towards stealing from queues that we recently successfully stole from to decrease the number of unsuccessful steal attempts.

Co-authored-by: Thomas Schatzl <thomas.schatzl@oracle.com>
Reviewed-by: eosterlund, kbarrett
2018-08-03 11:06:10 +02:00
Stefan Karlsson
11813888b8 8204540: Automatic oop closure devirtualization
Reviewed-by: kbarrett, eosterlund
2018-05-26 06:59:49 +02:00
Paul Hohensee
ebe240f3f4 8195115: 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: ehelin, mchung
2018-06-19 05:18:49 -07: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
Robbin Ehn
66f8951e15 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by: coleenp, gziemski, iklam, jiangli
2018-06-07 14:11:56 +02:00
Coleen Phillimore
892a2af03f 8204301: Make OrderAccess functions available to hpp rather than inline.hpp files
Move orderAccess.inline.hpp into orderAccess.hpp and remove os.hpp inclusion and conditional os::is_MP() for fence on x86 platforms

Reviewed-by: dholmes, hseigel
2018-06-06 10:45:40 -04: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
Goetz Lindenmaier
b72846bc20 8202745: Remove hyphens from "out-of-bounds"
Reviewed-by: rriggs, dholmes
2018-05-07 23:07:01 +02:00
Thomas Schatzl
b34a8c43f1 8202780: Remove EnqueueTask related code from ReferenceProcessor after JDK-8202017
Remove code obsoleted by JDK-8202017

Reviewed-by: kbarrett, sangheki
2018-05-09 13:37:05 +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
5f40eda733 8202642: Replace PAR_OOP_ITERATE with templates
Reviewed-by: eosterlund, sjohanss
2018-05-07 14:42:10 +02:00
Stefan Karlsson
1dd85fe2f4 8202641: Replace OOP_SINCE_SAVE_MARKS with templates
Reviewed-by: eosterlund, sjohanss
2018-05-07 14:42:08 +02:00
Stefan Karlsson
2e1bd03bad 8202639: Use concrete Generation classes in SerialHeap and CMSHeap
Reviewed-by: eosterlund, ehelin
2018-05-07 14:42:05 +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
Gerard Ziemski
edc81d17e1 8202150: [REDO] Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-26 11:19:05 -05:00
Gerard Ziemski
816e2e5fe0 8202151: [BACKOUT] Split globals.hpp to factor out the Flag class
Backed out JDK-8081519

Reviewed-by: kvn
2018-04-23 14:51:16 -05:00
Gerard Ziemski
60723b7e3d 8081519: Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-23 10:59:39 -05:00
Per Lidén
a4f21eeb03 8201646: Introduce ReferenceDiscoverer interface
Reviewed-by: stefank, tschatzl, rkennke
2018-04-19 07:54:50 +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
Roman Kennke
389d720746 8199735: Mark word updates need to use Access API
Reviewed-by: shade, eosterlund
2018-04-05 10:54:53 +02:00
Stefan Karlsson
6a8aa0fdad 8200736: Move CMSGCStats to the cms directory
Reviewed-by: sjohanss, tschatzl
2018-04-06 11:37:28 +02:00
Stefan Karlsson
f05f8de48f 8200735: Move CMS specific code from binaryTreeDictionary and freeList to CMS files
Reviewed-by: shade, adinn
2018-04-06 11:37:26 +02:00
Stefan Karlsson
3a5ca51fff 8200292: Move PushAndMarkVerifyClosure::do_oop_work to concurrentMarkSweepGeneration.cpp
Reviewed-by: tschatzl, sjohanss
2018-03-26 17:01:32 +02:00
Stefan Karlsson
1a1aecd166 8200106: Move NoSafepointVerifier out from gcLocker.hpp
Reviewed-by: coleenp
2018-03-23 18:54:12 +01:00
Yasumasa Suenaga
fcb1520305 8153333: [REDO] STW phases at Concurrent GC should count in PerfCounte
Reviewed-by: sjohanss, tschatzl
2018-03-09 23:13:37 +09: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
3ad60c1bd2 8198530: Move _gc_policy_counters from GenCollectorPolicy to GenCollectedHeap
Reviewed-by: kbarrett, sjohanss
2018-02-22 18:37:48 +01:00
Stefan Karlsson
5f4f3883d8 8198525: Move _size_policy out of GenCollectorPolicy into GenCollectedHeap
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:32 +01:00
Stefan Karlsson
f408526f30 8198515: Extract SoftReferencePolicy code out of CollectorPolicy
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:07 +01:00
Stefan Karlsson
713858f459 8198373: Remove CollectorPolicy::is/as functions
Reviewed-by: sjohanss, pliden
2018-02-22 18:34:18 +01:00