equal
deleted
inserted
replaced
501 _counters.nProcs = os::active_processor_count(); |
501 _counters.nProcs = os::active_processor_count(); |
502 _counters.cpus = NULL; |
502 _counters.cpus = NULL; |
503 } |
503 } |
504 |
504 |
505 bool CPUPerformanceInterface::CPUPerformance::initialize() { |
505 bool CPUPerformanceInterface::CPUPerformance::initialize() { |
506 size_t tick_array_size = (_counters.nProcs +1) * sizeof(os::Linux::CPUPerfTicks); |
506 size_t array_entry_count = _counters.nProcs + 1; |
507 _counters.cpus = (os::Linux::CPUPerfTicks*)NEW_C_HEAP_ARRAY(char, tick_array_size, mtInternal); |
507 _counters.cpus = NEW_C_HEAP_ARRAY(os::Linux::CPUPerfTicks, array_entry_count, mtInternal); |
508 if (NULL == _counters.cpus) { |
508 if (NULL == _counters.cpus) { |
509 return false; |
509 return false; |
510 } |
510 } |
511 memset(_counters.cpus, 0, tick_array_size); |
511 memset(_counters.cpus, 0, array_entry_count * sizeof(*_counters.cpus)); |
512 |
512 |
513 // For the CPU load total |
513 // For the CPU load total |
514 os::Linux::get_tick_information(&_counters.cpus[_counters.nProcs], -1); |
514 os::Linux::get_tick_information(&_counters.cpus[_counters.nProcs], -1); |
515 |
515 |
516 // For each CPU |
516 // For each CPU |