Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
8251463: Obsolete -XX:ForceNUMA option
Reviewed-by: kbarrett, sjohanss, lkorinth
  • Loading branch information
albertnetymk committed Aug 18, 2020
1 parent 2388590 commit 354dcda373a68d6f56e0fc4387023712814670a9
Show file tree
Hide file tree
Showing 5 changed files with 5 additions and 16 deletions.
@@ -5314,11 +5314,9 @@ void os::Linux::numa_init() {
} else {
if ((Linux::numa_max_node() < 1) || Linux::is_bound_to_single_node()) {
// If there's only one node (they start from 0) or if the process
// is bound explicitly to a single node using membind, disable NUMA unless
// user explicilty forces NUMA optimizations on single-node/UMA systems
UseNUMA = ForceNUMA;
// is bound explicitly to a single node using membind, disable NUMA
UseNUMA = false;
} else {

LogTarget(Info,os) log;
LogStream ls(log);

@@ -4233,9 +4233,7 @@ jint os::init_2(void) {
// initialize thread priority policy
prio_init();

if (UseNUMA && !ForceNUMA) {
UseNUMA = false; // We don't fully support this yet
}
UseNUMA = false; // We don't fully support this yet

if (UseNUMAInterleaving || (UseNUMA && FLAG_IS_DEFAULT(UseNUMAInterleaving))) {
if (!numa_interleaving_init()) {
@@ -31,9 +31,6 @@ double G1NUMAStats::Stat::rate() const {
}

G1NUMAStats::NodeDataArray::NodeDataArray(uint num_nodes) {
// Not using > 1, for -XX:+ForceNUMA support.
guarantee(num_nodes > 0, "Number of nodes (%u) should be set", num_nodes);

// The row represents the number of nodes.
_num_column = num_nodes;
// +1 for G1MemoryNodeManager::AnyNodeIndex.
@@ -125,8 +122,7 @@ void G1NUMAStats::NodeDataArray::copy(uint req_index, size_t* stat) {
G1NUMAStats::G1NUMAStats(const int* node_ids, uint num_node_ids) :
_node_ids(node_ids), _num_node_ids(num_node_ids), _node_data() {

// Not using > 1, for -XX:+ForceNUMA support.
assert(_num_node_ids > 0, "Should have at least one node id: %u", _num_node_ids);
assert(_num_node_ids > 1, "Should have at least one node id: %u", _num_node_ids);

for (int i = 0; i < NodeDataItemsSentinel; i++) {
_node_data[i] = new NodeDataArray(_num_node_ids);
@@ -522,7 +522,6 @@ static SpecialFlag const special_jvm_flags[] = {
{ "UseMembar", JDK_Version::jdk(10), JDK_Version::jdk(12), JDK_Version::undefined() },
{ "AllowRedefinitionToAddDeleteMethods", JDK_Version::jdk(13), JDK_Version::undefined(), JDK_Version::undefined() },
{ "FlightRecorder", JDK_Version::jdk(13), JDK_Version::undefined(), JDK_Version::undefined() },
{ "ForceNUMA", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "UseBiasedLocking", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "BiasedLockingStartupDelay", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "PrintBiasedLockingStatistics", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
@@ -553,6 +552,7 @@ static SpecialFlag const special_jvm_flags[] = {
{ "PrintVMQWaitTime", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "UseNewFieldLayout", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "UseSemaphoreGCThreadsSynchronization", JDK_Version::undefined(), JDK_Version::jdk(16), JDK_Version::jdk(17) },
{ "ForceNUMA", JDK_Version::jdk(15), JDK_Version::jdk(16), JDK_Version::jdk(17) },

#ifdef TEST_VERIFY_SPECIAL_JVM_FLAGS
// These entries will generate build errors. Their purpose is to test the macros.
@@ -191,9 +191,6 @@ const size_t minimumSymbolTableSize = 1024;
"Granularity to use for NUMA interleaving on Windows OS") \
range(os::vm_allocation_granularity(), NOT_LP64(2*G) LP64_ONLY(8192*G)) \
\
product(bool, ForceNUMA, false, \
"(Deprecated) Force NUMA optimizations on single-node/UMA systems") \
\
product(uintx, NUMAChunkResizeWeight, 20, \
"Percentage (0-100) used to weight the current sample when " \
"computing exponentially decaying average for " \

0 comments on commit 354dcda

Please sign in to comment.