| 273 | } |
| 274 | |
| 275 | void StatsCalculator::AddNodeStats(const std::string& name, |
| 276 | const std::string& type, int64_t run_order, |
| 277 | int64_t start_us, int64_t rel_end_us, |
| 278 | int64_t mem_used) { |
| 279 | Detail* detail = nullptr; |
| 280 | if (details_.find(name) == details_.end()) { |
| 281 | details_.insert({name, {}}); |
| 282 | detail = &details_.at(name); |
| 283 | detail->type = type; |
| 284 | detail->name = name; |
| 285 | detail->run_order = run_order; |
| 286 | } else { |
| 287 | detail = &details_.at(name); |
| 288 | } |
| 289 | detail->start_us.UpdateStat(start_us); |
| 290 | detail->rel_end_us.UpdateStat(rel_end_us); |
| 291 | detail->mem_used.UpdateStat(mem_used); |
| 292 | detail->times_called++; |
| 293 | } |
| 294 | |
| 295 | } // namespace tensorflow |