8216975: Using ForceNUMA does not disable adaptive sizing with parallel gc

Reviewed-by: kbarrett, tschatzl, lkorinth
This commit is contained in:
Ivan Walulya 2020-02-21 10:56:30 +01:00
parent 5275d6e2d9
commit 976473690b
2 changed files with 7 additions and 12 deletions

View File

@ -5127,8 +5127,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.
UseNUMA = false;
// is bound explicitly to a single node using membind, disable NUMA unless
// user explicilty forces NUMA optimizations on single-node/UMA systems
UseNUMA = ForceNUMA;
} else {
LogTarget(Info,os) log;
@ -5167,10 +5168,6 @@ void os::Linux::numa_init() {
UseAdaptiveNUMAChunkSizing = false;
}
}
if (!UseNUMA && ForceNUMA) {
UseNUMA = true;
}
}
// this is called _after_ the global arguments have been parsed

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -3934,13 +3934,11 @@ jint os::init_2(void) {
size_t lgrp_num = os::numa_get_leaf_groups(lgrp_ids, lgrp_limit);
FREE_C_HEAP_ARRAY(int, lgrp_ids);
if (lgrp_num < 2) {
// There's only one locality group, disable NUMA.
UseNUMA = false;
// There's only one locality group, disable NUMA unless
// user explicilty forces NUMA optimizations on single-node/UMA systems
UseNUMA = ForceNUMA;
}
}
if (!UseNUMA && ForceNUMA) {
UseNUMA = true;
}
}
Solaris::signal_sets_init();