8241673: Shenandoah: refactor anti-false-sharing padding

Reviewed-by: rkennke
This commit is contained in:
Aleksey Shipilev 2020-03-26 19:09:20 +01:00
parent 8c5531b629
commit 6be46f8ebb
14 changed files with 85 additions and 36 deletions

View file

@ -28,6 +28,7 @@
#include "gc/shared/gcCause.hpp"
#include "gc/shared/concurrentGCThread.hpp"
#include "gc/shenandoah/shenandoahHeap.hpp"
#include "gc/shenandoah/shenandoahPadding.hpp"
#include "gc/shenandoah/shenandoahSharedVariables.hpp"
#include "runtime/task.hpp"
#include "utilities/ostream.hpp"
@ -85,9 +86,9 @@ private:
GCCause::Cause _requested_gc_cause;
ShenandoahHeap::ShenandoahDegenPoint _degen_point;
DEFINE_PAD_MINUS_SIZE(0, DEFAULT_CACHE_LINE_SIZE, sizeof(volatile size_t));
shenandoah_padding(0);
volatile size_t _allocs_seen;
DEFINE_PAD_MINUS_SIZE(1, DEFAULT_CACHE_LINE_SIZE, 0);
shenandoah_padding(1);
bool check_cancellation_or_degen(ShenandoahHeap::ShenandoahDegenPoint point);
void service_concurrent_normal_cycle(GCCause::Cause cause);