< prev index next >
src/share/vm/gc/g1/g1ConcurrentMark.cpp
Print this page
rev 11623 : [mq]: fix-initial-active-processor-count
@@ -414,15 +414,14 @@
// on a target overhead with respect to the soft real-time goal
double marking_overhead = (double) G1MarkingOverheadPercent / 100.0;
double overall_cm_overhead =
(double) MaxGCPauseMillis * marking_overhead /
(double) GCPauseIntervalMillis;
- double cpu_ratio = 1.0 / (double) os::processor_count();
+ double cpu_ratio = 1.0 / os::initial_active_processor_count();
double marking_thread_num = ceil(overall_cm_overhead / cpu_ratio);
double marking_task_overhead =
- overall_cm_overhead / marking_thread_num *
- (double) os::processor_count();
+ overall_cm_overhead / marking_thread_num * os::initial_active_processor_count();
double sleep_factor =
(1.0 - marking_task_overhead) / marking_task_overhead;
FLAG_SET_ERGO(uint, ConcGCThreads, (uint) marking_thread_num);
_sleep_factor = sleep_factor;
< prev index next >