Skip to content

Commit 11debd9

Browse files
committed
#2435: lb: factor out ClusterInfo inter cluster and obj edge addition
1 parent 0576c19 commit 11debd9

File tree

2 files changed

+20
-16
lines changed

2 files changed

+20
-16
lines changed

src/vt/vrt/collection/balance/temperedlb/tempered_msgs.h

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,22 @@ struct ClusterInfo {
7070
BytesType max_object_serialized_bytes_outside = 0;
7171
BytesType cluster_footprint = 0;
7272

73+
void addInterClusterEdge(bool is_send, SharedIDType id, double volume) {
74+
if (is_send) {
75+
inter_cluster_send_vol[id] += volume;
76+
} else {
77+
inter_cluster_recv_vol[id] += volume;
78+
}
79+
}
80+
81+
void addObjEdge(bool is_send, elm::ElementIDStruct obj, double volume) {
82+
if (is_send) {
83+
obj_send_vol[obj] += volume;
84+
} else {
85+
obj_recv_vol[obj] += volume;
86+
}
87+
}
88+
7389
template <typename SerializerT>
7490
void serialize(SerializerT& s) {
7591
s | load | shared_id | bytes | intra_send_vol | intra_recv_vol;

src/vt/vrt/collection/balance/temperedlb/temperedlb.cc

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -676,22 +676,14 @@ void TemperedLB::makeClusterSummaryAddEdges(
676676
info.intra_recv_vol += volume;
677677
}
678678

679-
// intra-cluster (self-edge)
680-
if (is_send) {
681-
info.inter_cluster_send_vol[shared_id] += volume;
682-
} else {
683-
info.inter_cluster_recv_vol[shared_id] += volume;
684-
}
679+
// iter-cluster
680+
info.addInterClusterEdge(is_send, shared_id, volume);
685681
} else if (
686682
auto it2 = obj_shared_block_.find(send_or_recv_obj);
687683
it2 != obj_shared_block_.end()
688684
) {
689685
// inter-cluster edge
690-
if (is_send) {
691-
info.inter_cluster_send_vol[it2->second] += volume;
692-
} else {
693-
info.inter_cluster_recv_vol[it2->second] += volume;
694-
}
686+
info.addInterClusterEdge(is_send, it2->second, volume);
695687

696688
vt_debug_print(
697689
verbose, temperedlb,
@@ -704,11 +696,7 @@ void TemperedLB::makeClusterSummaryAddEdges(
704696

705697
} else {
706698
// across-object edge not part of a cluster
707-
if (is_send) {
708-
info.obj_send_vol[send_or_recv_obj] += volume;
709-
} else {
710-
info.obj_recv_vol[send_or_recv_obj] += volume;
711-
}
699+
info.addObjEdge(is_send, send_or_recv_obj, volume);
712700
}
713701
}
714702
}

0 commit comments

Comments
 (0)