mirror of
https://github.com/openjdk/jdk.git
synced 2026-07-20 07:58:55 +00:00
7198334: UseNUMA modifies system parameters on non-NUMA system
The flags MinHeapDeltaBytes and UseNUMAInterleaving must be adjusted after the OS have adjusted the UseNUMA flag in the method os::init_2. Reviewed-by: dholmes, brutisso
This commit is contained in:
parent
a054222634
commit
7e892709bd
@ -1485,14 +1485,6 @@ void Arguments::set_parallel_gc_flags() {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (UseNUMA) {
|
||||
if (FLAG_IS_DEFAULT(MinHeapDeltaBytes)) {
|
||||
FLAG_SET_DEFAULT(MinHeapDeltaBytes, 64*M);
|
||||
}
|
||||
// For those collectors or operating systems (eg, Windows) that do
|
||||
// not support full UseNUMA, we will map to UseNUMAInterleaving for now
|
||||
UseNUMAInterleaving = true;
|
||||
}
|
||||
}
|
||||
|
||||
void Arguments::set_g1_gc_flags() {
|
||||
@ -3332,6 +3324,22 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
|
||||
return JNI_OK;
|
||||
}
|
||||
|
||||
jint Arguments::adjust_after_os() {
|
||||
#if INCLUDE_ALTERNATE_GCS
|
||||
if (UseParallelGC || UseParallelOldGC) {
|
||||
if (UseNUMA) {
|
||||
if (FLAG_IS_DEFAULT(MinHeapDeltaBytes)) {
|
||||
FLAG_SET_DEFAULT(MinHeapDeltaBytes, 64*M);
|
||||
}
|
||||
// For those collectors or operating systems (eg, Windows) that do
|
||||
// not support full UseNUMA, we will map to UseNUMAInterleaving for now
|
||||
UseNUMAInterleaving = true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
return JNI_OK;
|
||||
}
|
||||
|
||||
int Arguments::PropertyList_count(SystemProperty* pl) {
|
||||
int count = 0;
|
||||
while(pl != NULL) {
|
||||
|
||||
@ -409,6 +409,8 @@ class Arguments : AllStatic {
|
||||
public:
|
||||
// Parses the arguments
|
||||
static jint parse(const JavaVMInitArgs* args);
|
||||
// Adjusts the arguments after the OS have adjusted the arguments
|
||||
static jint adjust_after_os();
|
||||
// Check for consistency in the selection of the garbage collector.
|
||||
static bool check_gc_consistency();
|
||||
// Check consistecy or otherwise of VM argument settings
|
||||
|
||||
@ -3334,6 +3334,9 @@ jint Threads::create_vm(JavaVMInitArgs* args, bool* canTryAgain) {
|
||||
jint os_init_2_result = os::init_2();
|
||||
if (os_init_2_result != JNI_OK) return os_init_2_result;
|
||||
|
||||
jint adjust_after_os_result = Arguments::adjust_after_os();
|
||||
if (adjust_after_os_result != JNI_OK) return adjust_after_os_result;
|
||||
|
||||
// intialize TLS
|
||||
ThreadLocalStorage::init();
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user