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:
Erik Helin 2012-11-20 11:40:11 +01:00 committed by Bengt Rutisson
parent a054222634
commit 7e892709bd
3 changed files with 21 additions and 8 deletions

View file

@ -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) {