< prev index next >
src/share/vm/gc/g1/workerDataArray.inline.hpp
Print this page
*** 108,122 ****
}
}
template <class T>
void WorkerDataArray<T>::print_summary_on(outputStream* out, bool print_sum) const {
uint start = 0;
! while (get(start) == uninitialized()) {
! assert(start < _length, "Printing unused WorkerDataArray.");
start++;
}
T min = get(start);
T max = min;
T sum = 0;
uint active_threads = 0;
for (uint i = start; i < _length; ++i) {
--- 108,123 ----
}
}
template <class T>
void WorkerDataArray<T>::print_summary_on(outputStream* out, bool print_sum) const {
+ out->print("%-25s", title());
uint start = 0;
! while (start < _length && get(start) == uninitialized()) {
start++;
}
+ if (start < _length) {
T min = get(start);
T max = min;
T sum = 0;
uint active_threads = 0;
for (uint i = start; i < _length; ++i) {
*** 129,139 ****
}
}
T diff = max - min;
assert(active_threads != 0, "Must be since we found a used value for the start index");
double avg = sum / (double) active_threads;
! WDAPrinter::summary(out, title(), min, avg, max, diff, sum, print_sum);
}
template <class T>
void WorkerDataArray<T>::print_details_on(outputStream* out) const {
WDAPrinter::details(this, out);
--- 130,145 ----
}
}
T diff = max - min;
assert(active_threads != 0, "Must be since we found a used value for the start index");
double avg = sum / (double) active_threads;
! WDAPrinter::summary(out, min, avg, max, diff, sum, print_sum);
! out->print_cr(", Workers: %d", active_threads);
! } else {
! // No data for this phase.
! out->print_cr(" skipped");
! }
}
template <class T>
void WorkerDataArray<T>::print_details_on(outputStream* out) const {
WDAPrinter::details(this, out);
*** 145,160 ****
if (_thread_work_items != NULL) {
_thread_work_items->reset();
}
}
- template <>
- inline size_t WorkerDataArray<size_t>::uninitialized() const {
- return (size_t)-1;
- }
-
- template <>
- inline double WorkerDataArray<double>::uninitialized() const {
- return -1.0;
- }
-
#endif // SHARE_VM_GC_G1_WORKERDATAARRAY_INLINE_HPP
--- 151,156 ----
< prev index next >