Skip to content

Commit 71aaef0

Browse files
jbaiocchitensorflower-gardener
authored andcommitted
Add FindOrAddMutableStat to xplane_utils
Remove AddOrUpdate{Int,Str}Stat PiperOrigin-RevId: 339324309 Change-Id: I2abb355d9311ab9a88dba5bf07f0c15e9a62e01f
1 parent 6811ac3 commit 71aaef0

File tree

3 files changed

+24
-40
lines changed

3 files changed

+24
-40
lines changed

tensorflow/core/profiler/utils/group_events.cc

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -405,8 +405,9 @@ std::string EventNode::GetGroupName() const {
405405

406406
void EventNode::SetGroupId(int64 group_id) {
407407
group_id_ = group_id;
408-
AddOrUpdateIntStat(*plane_->GetStatMetadataId(StatType::kGroupId), group_id,
409-
raw_event_);
408+
FindOrAddMutableStat(*plane_->GetStatMetadataId(StatType::kGroupId),
409+
raw_event_)
410+
->set_int64_value(group_id);
410411
}
411412

412413
void EventNode::PropagateGroupId(int64 group_id,
@@ -435,31 +436,32 @@ void EventNode::PropagateGroupId(int64 group_id,
435436
}
436437

437438
void EventNode::AddStepName(absl::string_view step_name) {
438-
AddOrUpdateStrStat(*plane_->GetStatMetadataId(StatType::kStepName), step_name,
439-
raw_event_);
439+
FindOrAddMutableStat(*plane_->GetStatMetadataId(StatType::kStepName),
440+
raw_event_)
441+
->set_str_value(step_name.data(), step_name.size());
440442
}
441443

442444
void EventNode::AddSelectedGroupIds(
443445
const GroupMetadataMap& group_metadata_map) {
446+
const auto& group_metadata = group_metadata_map.at(*group_id_);
444447
std::vector<int64> group_ids;
445-
group_ids.reserve(1 + group_metadata_map.at(*group_id_).parents.size() +
446-
group_metadata_map.at(*group_id_).children.size());
448+
group_ids.reserve(1 + group_metadata.parents.size() +
449+
group_metadata.children.size());
447450
group_ids.push_back(*group_id_);
448-
group_ids.insert(group_ids.end(),
449-
group_metadata_map.at(*group_id_).parents.begin(),
450-
group_metadata_map.at(*group_id_).parents.end());
451-
group_ids.insert(group_ids.end(),
452-
group_metadata_map.at(*group_id_).children.begin(),
453-
group_metadata_map.at(*group_id_).children.end());
454-
AddOrUpdateStrStat(
455-
*plane_->GetStatMetadataId(StatType::kSelectedGroupIds),
456-
absl::StrCat("?selected_group_ids=", absl::StrJoin(group_ids, ",")),
457-
raw_event_);
451+
group_ids.insert(group_ids.end(), group_metadata.parents.begin(),
452+
group_metadata.parents.end());
453+
group_ids.insert(group_ids.end(), group_metadata.children.begin(),
454+
group_metadata.children.end());
455+
FindOrAddMutableStat(*plane_->GetStatMetadataId(StatType::kSelectedGroupIds),
456+
raw_event_)
457+
->set_str_value(
458+
absl::StrCat("?selected_group_ids=", absl::StrJoin(group_ids, ",")));
458459
}
459460

460461
void EventNode::SetIsEager(bool is_eager) {
461-
AddOrUpdateIntStat(*plane_->GetStatMetadataId(StatType::kIsEager),
462-
is_eager ? 1 : 0, raw_event_);
462+
FindOrAddMutableStat(*plane_->GetStatMetadataId(StatType::kIsEager),
463+
raw_event_)
464+
->set_int64_value(is_eager ? 1 : 0);
463465
}
464466

465467
bool EventNode::IsEager() {

tensorflow/core/profiler/utils/xplane_utils.cc

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -117,29 +117,15 @@ bool IsNested(const XEvent& event, const XEvent& parent) {
117117
return XEventTimespan(parent).Includes(XEventTimespan(event));
118118
}
119119

120-
void AddOrUpdateIntStat(int64 metadata_id, int64 value, XEvent* event) {
120+
XStat* FindOrAddMutableStat(int64 metadata_id, XEvent* event) {
121121
for (auto& stat : *event->mutable_stats()) {
122122
if (stat.metadata_id() == metadata_id) {
123-
stat.set_int64_value(value);
124-
return;
123+
return &stat;
125124
}
126125
}
127126
XStat* stat = event->add_stats();
128127
stat->set_metadata_id(metadata_id);
129-
stat->set_int64_value(value);
130-
}
131-
132-
void AddOrUpdateStrStat(int64 metadata_id, absl::string_view value,
133-
XEvent* event) {
134-
for (auto& stat : *event->mutable_stats()) {
135-
if (stat.metadata_id() == metadata_id) {
136-
stat.set_str_value(std::string(value));
137-
return;
138-
}
139-
}
140-
XStat* stat = event->add_stats();
141-
stat->set_metadata_id(metadata_id);
142-
stat->set_str_value(std::string(value));
128+
return stat;
143129
}
144130

145131
void RemovePlane(XSpace* space, const XPlane* plane) {

tensorflow/core/profiler/utils/xplane_utils.h

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,7 @@ std::vector<XPlane*> FindMutablePlanesWithPrefix(XSpace* space,
4444
bool IsNested(const tensorflow::profiler::XEvent& event,
4545
const tensorflow::profiler::XEvent& parent);
4646

47-
void AddOrUpdateIntStat(int64 metadata_id, int64 value,
48-
tensorflow::profiler::XEvent* event);
49-
50-
void AddOrUpdateStrStat(int64 metadata_id, absl::string_view value,
51-
tensorflow::profiler::XEvent* event);
47+
XStat* FindOrAddMutableStat(int64 metadata_id, XEvent* event);
5248

5349
void RemovePlane(XSpace* space, const XPlane* plane);
5450

0 commit comments

Comments
 (0)