mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 19:44:41 +02:00
8036860: Pad and cache-align the BiasedMappedArray
Pad and cache-align BiasedMappedArray instances by default to avoid performance variability problems due to false sharing, as instances of this data structures are typically used for performance sensitive code. Reviewed-by: brutisso, stefank
This commit is contained in:
parent
483ea400a5
commit
a07b2194f7
4 changed files with 28 additions and 6 deletions
|
@ -25,8 +25,8 @@
|
|||
#ifndef SHARE_VM_GC_IMPLEMENTATION_G1_G1BIASEDARRAY_HPP
|
||||
#define SHARE_VM_GC_IMPLEMENTATION_G1_G1BIASEDARRAY_HPP
|
||||
|
||||
#include "memory/allocation.hpp"
|
||||
#include "utilities/debug.hpp"
|
||||
#include "memory/allocation.inline.hpp"
|
||||
|
||||
// Implements the common base functionality for arrays that contain provisions
|
||||
// for accessing its elements using a biased index.
|
||||
|
@ -48,11 +48,7 @@ protected:
|
|||
_bias(0), _shift_by(0) { }
|
||||
|
||||
// Allocate a new array, generic version.
|
||||
static address create_new_base_array(size_t length, size_t elem_size) {
|
||||
assert(length > 0, "just checking");
|
||||
assert(elem_size > 0, "just checking");
|
||||
return NEW_C_HEAP_ARRAY(u_char, length * elem_size, mtGC);
|
||||
}
|
||||
static address create_new_base_array(size_t length, size_t elem_size);
|
||||
|
||||
// Initialize the members of this class. The biased start address of this array
|
||||
// is the bias (in elements) multiplied by the element size.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue