|
|
|
@@ -136,7 +136,8 @@ Status DeviceCpu::Collect(ExecutionTree *tree) { |
|
|
|
return Status::OK(); |
|
|
|
} |
|
|
|
Status DeviceCpu::Analyze(std::string *name, double *utilization, std::string *extra_message) { |
|
|
|
*name = std::string("device_info"); |
|
|
|
name->clear(); |
|
|
|
name->append("device_info"); |
|
|
|
int total_samples = cpu_util_.size(); |
|
|
|
int sum = 0; |
|
|
|
// Only analyze the middle half of the samples |
|
|
|
@@ -357,7 +358,7 @@ Status OperatorCpu::Analyze(std::string *name, double *utilization, std::string |
|
|
|
// Starting and ending may be impacted by startup or ending pipeline activities |
|
|
|
int start_analyze = total_samples / 4; |
|
|
|
int end_analyze = total_samples - start_analyze; |
|
|
|
double op_util; |
|
|
|
double op_util = 0; |
|
|
|
*utilization = 0; |
|
|
|
|
|
|
|
// start loop from 0 was as don't want to analyze op -1 |
|
|
|
@@ -373,7 +374,8 @@ Status OperatorCpu::Analyze(std::string *name, double *utilization, std::string |
|
|
|
} |
|
|
|
if (op_util > *utilization) { |
|
|
|
*utilization = op_util; |
|
|
|
*name = op_name[op_id]; |
|
|
|
name->clear(); |
|
|
|
name->append(op_name[op_id]); |
|
|
|
} |
|
|
|
extra_message->append(op_name[op_id] + " utiliization per thread: " + std::to_string(op_util) + "% (" + |
|
|
|
std::to_string(op_parallel_workers[op_id]) + " parallel_workers); "); |
|
|
|
@@ -508,7 +510,8 @@ Status ProcessCpu::Collect(ExecutionTree *tree) { |
|
|
|
} |
|
|
|
|
|
|
|
Status ProcessCpu::Analyze(std::string *name, double *utilization, std::string *extra_message) { |
|
|
|
*name = std::string("process_info"); |
|
|
|
name->clear(); |
|
|
|
name->append("process_info"); |
|
|
|
int total_samples = process_util_.size(); |
|
|
|
int sum = 0; |
|
|
|
// Only analyze the middle half of the samples |
|
|
|
|