19 Commits

Author SHA1 Message Date
Robbin Ehn
21e03e71aa 8234796: Refactor Handshake::execute to take a more complex type than ThreadClosure
Reviewed-by: dholmes, pliden, coleenp
2019-12-03 15:32:41 +01:00
Stefan Karlsson
161333eeba 8234748: Clean up atomic and orderAccess includes
Reviewed-by: dholmes
2019-11-26 10:47:46 +01:00
Man Cao
5f2ac35cd0 8087198: G1 card refinement: batching, sorting
Reviewed-by: tschatzl, kbarrett
2019-11-22 17:03:55 -08:00
Kim Barrett
d7fcd0ccac 8231153: Improve concurrent refinement statistics
8043505: G1RemSet::_conc_refine_cards is incremented unsynchronized

Added refinement rates and counts, removed _conc_refine_cards

Reviewed-by: tschatzl, sjohanss
2019-10-08 15:15:50 -04:00
Kim Barrett
8b67b75f50 8221361: Eliminate two-phase initialization for PtrQueueSet classes
Move allocator and CBL monitor init to constructor.

Reviewed-by: tschatzl, shade
2019-09-09 16:54:48 -04: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
Kim Barrett
1668370dfe 8230327: Make G1DirtyCardQueueSet free-id init unconditional
Remove conditional init and make the set an inline member.

Reviewed-by: sjohanss, lkorinth, tschatzl
2019-08-30 14:05:00 -04:00
Kim Barrett
6d064a747e 8230332: G1DirtyCardQueueSet _notify_when_complete is always true
Removed _notify_when_complete, assume true value where formerly used.

Reviewed-by: sjohanss, tschatzl
2019-08-29 18:52:30 -04:00
Kim Barrett
b6b6a37fe1 8230109: G1DirtyCardQueueSet should use card counts rather than buffer counts
Consistently use card counts

Reviewed-by: sjohanss, sangheki
2019-08-29 18:35:52 -04:00
Kim Barrett
b0632088a8 8230192: Rename G1RedirtyCardsBufferList to G1BufferNodeList
Rename class and move to new files.

Reviewed-by: sjohanss, lkorinth
2019-08-27 11:05:17 -04:00
Thomas Schatzl
b3c21d9a9b 8227719: G1 Pending cards estimation too conservative in cost prediction
Instead of using a coarse prediction for the log buffers, accumulate the actual number directly.

Reviewed-by: kbarrett, sangheki
2019-07-24 11:49:39 +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
Kim Barrett
805258f3a9 8225255: Make SATB qset lock-free
Refactor PtrQueueSet, use lock-free stack for SATB completed buffers

Reviewed-by: tschatzl, shade
2019-06-26 13:18:38 -04:00
Kim Barrett
54d0b2a8d6 8224167: Refactor PtrQueue completed buffer processing
Add handle_completed_buffer and refactor.

Reviewed-by: tschatzl, shade
2019-05-21 19:19:44 -04:00
Kim Barrett
3bb3dbc47e 8220240: Refactor shared dirty card queue
Add G1SharedDirtyCardQueue class.

Reviewed-by: tschatzl, lkorinth
2019-03-22 15:42:43 -04:00
Thomas Schatzl
ece7e8a2a1 8220301: Remove jbyte use in CardTable
Use CardTable::CardValue aliased to uint8_t instead.

Reviewed-by: kbarrett, shade
2019-03-13 21:01:56 +01:00
Kim Barrett
725a467ad8 8219613: Use NonJavaThread PtrQueues
Init and use NJT queues, remove shared SATB queue.

Co-authored-by: Aleksey Shipilev <shade@redhat.com>
Reviewed-by: shade, zgu, pliden, tschatzl
2019-03-05 19:54:33 -05: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
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