Pass edges by reference to state merge

This commit is contained in:
Noah L. Schrick 2022-02-16 02:48:17 -06:00
parent 44742e7aa5
commit c81c43035b
3 changed files with 4 additions and 4 deletions

View File

@ -1444,7 +1444,7 @@ int initQSize, double mem_threshold, mpi::communicator &world, int state_limit)
if(world.iprobe(w, 11)){ if(world.iprobe(w, 11)){
world.recv(w, 11, node_edges[w]); world.recv(w, 11, node_edges[w]);
} }
if(!node_factbases[w].empty() || !node_edges.empty()){ if(!node_factbases[w].empty() || !node_edges[w].empty()){
state_merge(node_factbases[w], node_edges[w], hash_map, instance, mem_threshold, world); state_merge(node_factbases[w], node_edges[w], hash_map, instance, mem_threshold, world);
} }
} }
@ -1496,7 +1496,7 @@ int initQSize, double mem_threshold, mpi::communicator &world, int state_limit)
if(world.iprobe(w, 11)){ if(world.iprobe(w, 11)){
world.recv(w, 11, node_edges[w]); world.recv(w, 11, node_edges[w]);
} }
if(!node_factbases[w].empty() || !node_edges.empty()){ if(!node_factbases[w].empty() || !node_edges[w].empty()){
state_merge(node_factbases[w], node_edges[w], hash_map, instance, mem_threshold, world); state_merge(node_factbases[w], node_edges[w], hash_map, instance, mem_threshold, world);
} }
} }

View File

@ -505,7 +505,7 @@ int send_check(boost::mpi::communicator &world, int curr_node){
return send_to; return send_to;
} }
void state_merge(std::vector<Factbase> node_factbases, std::vector<Edge> node_edges,\ void state_merge(std::vector<Factbase> &node_factbases, std::vector<Edge> &node_edges,\
std::unordered_map<size_t, int> &hash_map, AGGenInstance &instance, double mem_threshold,\ std::unordered_map<size_t, int> &hash_map, AGGenInstance &instance, double mem_threshold,\
mpi::communicator &world){ mpi::communicator &world){

View File

@ -23,7 +23,7 @@ void task_four(NetworkState &new_state);
int send_check(boost::mpi::communicator &world, int curr_node); int send_check(boost::mpi::communicator &world, int curr_node);
void state_merge(std::vector<Factbase> node_factbases, std::vector<Edge> node_edges,\ void state_merge(std::vector<Factbase> &node_factbases, std::vector<Edge> &node_edges,\
std::unordered_map<size_t, int> &hash_map, AGGenInstance &instance, double mem_threshold,\ std::unordered_map<size_t, int> &hash_map, AGGenInstance &instance, double mem_threshold,\
mpi::communicator &world); mpi::communicator &world);