26 Commits

Author SHA1 Message Date
Thomas Schatzl
5a21a8c4dd 8230706: Waiting on completion of strong nmethod processing causes long pause times with G1
Instead of globally waiting for completion of strong nmethod processing during evacuation, synchronize the nmethods processing on a per-nmethod basis so that only one thread processes one nmethod at once using a state. This state indicates what work (strong/weak processing) needs to be done and what has already been done.

Reviewed-by: sjohanss, kbarrett
2019-10-24 11:08:16 +02:00
Coleen Phillimore
59dcb50e96 8231472: Clean up Monitor::_safepoint_check usage to Mutex::_safepoint_check
Change Monitor:: to Mutex:: when allocating a Mutex, and in mutexLocker.

Reviewed-by: rehn, dholmes
2019-09-27 07:56:02 -04:00
Thomas Schatzl
f92526e6fd 8231189: Rename worker_i parameters to worker_id
Reviewed-by: kbarrett, sjohanss
2019-09-23 11:37:08 +02:00
Thomas Schatzl
03e769bd64 8159984: Remove call to ClassLoaderDataGraph::clear_claimed_marks during the initial mark pause
The CLDG is only iterated once during garbage collection, so we do not need to claim CLDs any more.

Reviewed-by: sjohanss, kbarrett
2019-09-23 11:37:02 +02:00
Kim Barrett
e396e38bb3 8227653: Add VM Global OopStorage
Replaced conditional JVMCI global storage with VM global storage.

Reviewed-by: tschatzl, lfoltan, kvn
2019-07-18 14:57:32 -04:00
Stefan Karlsson
c90f3ee68b 8223624: Cleanup includes of universe.hpp
Reviewed-by: coleenp, lkorinth
2019-05-09 14:28:30 +02:00
Kim Barrett
a8e13a5839 8221359: Eliminate SATBMarkQueueSet::filter_thread_buffers
Removed filter_thread_buffers

Reviewed-by: tschatzl, sangheki
2019-05-03 23:35:12 -04:00
Vladimir Kozlov
e9c523ae5f 8220623: [JVMCI] Update JVMCI to support JVMCI based Compiler compiled into shared library
Reviewed-by: dnsimon, never, stefank, rehn, neliasso, dholmes, kbarrett, coleenp
2019-05-01 12:31:29 -07:00
Coleen Phillimore
ccb2e9d925 8222988: Use MonitorLocker rather than MutexLocker when wait/notify used
Fixed use cases in code except CMS.

Reviewed-by: rehn, dcubed
2019-04-29 16:01:52 -04:00
Coleen Phillimore
fbafef11c0 8222811: Consolidate MutexLockerEx and MutexLocker
Make MutexLocker be MutexLockerEx implementation, remove MutexLockerEx calls.

Reviewed-by: dcubed, dholmes, pliden, rehn
2019-04-25 10:56:31 -04:00
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
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
d800361151 8213229: Investigate treating StringTable as weak in young collections
Reviewed-by: zgu, kbarrett
2019-01-29 11:30:17 +01:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -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
Kim Barrett
1b02e70184 8072498: Multi-thread JNI weak reference processing
Add parallel processing support to WeakProcessor.

Reviewed-by: tschatzl, sjohanss
2018-08-28 12:57:40 -04:00
Thomas Schatzl
d702d5f8d2 8208669: GC changes to allow enabling -Wreorder
Reviewed-by: kbarrett
2018-08-08 15:31:06 +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
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
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Thomas Schatzl
0f583c7817 6672778: G1 should trim task queues more aggressively during evacuation pauses
Regularly try to drain task queues. This helps memory usage and performance during garbage collection.

Reviewed-by: sjohanss, sangheki
2018-04-27 12:06:46 +02:00
Per Lidén
4c60e69b97 8201316: Move G1-related static members from JavaThread to G1BarrierSet
Reviewed-by: stefank, shade
2018-04-12 08:25:30 +02:00
Thomas Schatzl
5524494066 8199742: Clean up state flags in G1CollectorState
Remove, merge and update naming of flags in G1CollectorState

Reviewed-by: sangheki, sjohanss
2018-03-29 14:07:59 +02:00
Stefan Johansson
6929e0f05a 8186571: Implementation: JEP 307: Parallel Full GC for G1
Improve G1 worst-case latencies by making the full GC parallel.

Reviewed-by: tschatzl, sangheki, ehelin
2017-11-14 11:33:23 +01:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00