Skip to content

Commit

Permalink
Add isBlockedTiming to PlanNodeStats
Browse files Browse the repository at this point in the history
In previous commit facebookincubator#10923,
we added isBlockedTiming to OperatorStats. This commit adds it to
PlanNodeStats.
  • Loading branch information
yingsu00 committed Nov 13, 2024
1 parent c423200 commit cabadb4
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
7 changes: 5 additions & 2 deletions velox/exec/PlanNodeStats.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ void PlanNodeStats::addTotals(const OperatorStats& stats) {
outputBytes += stats.outputBytes;
outputVectors += stats.outputVectors;

isBlockedTiming.add(stats.isBlockedTiming);
addInputTiming.add(stats.addInputTiming);
getOutputTiming.add(stats.getOutputTiming);
finishTiming.add(stats.finishTiming);
Expand Down Expand Up @@ -126,9 +127,10 @@ std::string PlanNodeStats::toString(bool includeInputStats) const {
<< folly::join(',', dynamicFilterStats.producerNodeIds);
}

out << ", CPU breakdown: I/O/F "
out << ", CPU breakdown: B/I/O/F "
<< fmt::format(
"({}/{}/{})",
"({}/{}/{}/{})",
succinctNanos(isBlockedTiming.cpuNanos),
succinctNanos(addInputTiming.cpuNanos),
succinctNanos(getOutputTiming.cpuNanos),
succinctNanos(finishTiming.cpuNanos));
Expand Down Expand Up @@ -173,6 +175,7 @@ folly::dynamic toPlanStatsJson(const facebook::velox::exec::TaskStats& stats) {
stat["outputRows"] = operatorStat.second->outputRows;
stat["outputVectors"] = operatorStat.second->outputVectors;
stat["outputBytes"] = operatorStat.second->outputBytes;
stat["isBlockedTiming"] = operatorStat.second->isBlockedTiming.toString();
stat["addInputTiming"] = operatorStat.second->addInputTiming.toString();
stat["getOutputTiming"] = operatorStat.second->getOutputTiming.toString();
stat["finishTiming"] = operatorStat.second->finishTiming.toString();
Expand Down
4 changes: 4 additions & 0 deletions velox/exec/PlanNodeStats.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,10 @@ struct PlanNodeStats {
/// Sum of output bytes for all corresponding operators.
uint64_t outputBytes{0};

// Sum of CPU, scheduled and wall times for isBLocked call for all
// corresponding operators.
CpuWallTiming isBlockedTiming;

// Sum of CPU, scheduled and wall times for addInput call for all
// corresponding operators.
CpuWallTiming addInputTiming;
Expand Down

0 comments on commit cabadb4

Please sign in to comment.