Mercurial > hg > graal-compiler
diff src/share/vm/gc_implementation/g1/g1BiasedArray.cpp @ 17760:5479cb006184
8036860: Pad and cache-align the BiasedMappedArray
Summary: 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
author | tschatzl |
---|---|
date | Mon, 24 Mar 2014 15:31:00 +0100 |
parents | a19bea467577 |
children | 78bbf4d43a14 |
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/g1/g1BiasedArray.cpp Mon Mar 24 15:30:56 2014 +0100 +++ b/src/share/vm/gc_implementation/g1/g1BiasedArray.cpp Mon Mar 24 15:31:00 2014 +0100 @@ -24,6 +24,14 @@ #include "precompiled.hpp" #include "gc_implementation/g1/g1BiasedArray.hpp" +#include "memory/padded.inline.hpp" + +// Allocate a new array, generic version. +address G1BiasedMappedArrayBase::create_new_base_array(size_t length, size_t elem_size) { + assert(length > 0, "just checking"); + assert(elem_size > 0, "just checking"); + return PaddedPrimitiveArray<u_char, mtGC>::create_unfreeable(length * elem_size); +} #ifndef PRODUCT void G1BiasedMappedArrayBase::verify_index(idx_t index) const {