Skip to content

Commit 6964ca4

Browse files
authored
Merge branch 'master' into DistGraphEdits
2 parents 38b7534 + 5835f9b commit 6964ca4

File tree

1 file changed

+6
-21
lines changed

1 file changed

+6
-21
lines changed

libgluon/include/galois/graphs/GluonSubstrate.h

+6-21
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,6 @@ class GluonSubstrate : public galois::runtime::GlobalObject {
353353
net.sendTagged(x, galois::runtime::evilPhase, std::move(b));
354354
}
355355

356-
std::vector<std::vector<size_t>> delta_masters(numHosts);
357356
// receive the mirror nodes
358357
for (unsigned x = 0; x < numHosts; ++x) {
359358
if (x == id)
@@ -363,35 +362,21 @@ class GluonSubstrate : public galois::runtime::GlobalObject {
363362
do {
364363
p = net.recieveTagged(galois::runtime::evilPhase);
365364
} while (!p);
366-
367-
galois::runtime::gDeserialize(p->second, delta_masters[x]);
368-
for (size_t i = 0; i < delta_masters[x].size(); ++i) {
369-
(*masterNodes)[x].push_back(delta_masters[x][i]);
365+
std::vector<size_t> delta_masters;
366+
galois::runtime::gDeserialize(p->second, delta_masters);
367+
for (size_t i = 0; i < delta_masters.size(); ++i) {
368+
(*masterNodes)[p->first].push_back(delta_masters[i]);
370369
}
371370
}
372371
incrementEvilPhase();
373372
}
374373

375374
void addDeltaMirrors(std::vector<std::vector<size_t>>& delta_mirrors) {
376-
for (size_t i = 0; i < delta_mirrors.size(); ++i) {
377-
for (size_t j = 0; j < delta_mirrors[i].size(); ++j)
378-
std::cout << "mirror " << delta_mirrors[i][j] << " host " << id
379-
<< " i " << i << "\n";
380-
}
381-
std::vector<uint32_t> curr_mirrors_sizes(numHosts);
382375
std::vector<uint32_t> curr_masters_sizes(numHosts);
383376
for (uint32_t h = 0; h < numHosts; ++h) {
384-
curr_mirrors_sizes[h] = (*mirrorNodes)[h].size();
385377
curr_masters_sizes[h] = (*masterNodes)[h].size();
386378
}
387379
exchangeDeltaMirrors(delta_mirrors);
388-
for (unsigned x = 0; x < numHosts; ++x) {
389-
if (x == id)
390-
continue;
391-
for (size_t i = 0; i < delta_mirrors[x].size(); ++i) {
392-
(*mirrorNodes)[x].push_back(delta_mirrors[x][i]);
393-
}
394-
}
395380

396381
// convert the global ids stored in the master/mirror nodes arrays to local
397382
// ids
@@ -406,9 +391,9 @@ class GluonSubstrate : public galois::runtime::GlobalObject {
406391
}
407392

408393
for (uint32_t h = 0; h < mirrorNodes->size(); ++h) {
394+
size_t start = (*mirrorNodes)[h].size() - delta_mirrors[h].size();
409395
galois::do_all(
410-
galois::iterate(size_t{curr_mirrors_sizes[h]},
411-
(*mirrorNodes)[h].size()),
396+
galois::iterate(start, (*mirrorNodes)[h].size()),
412397
[&](size_t n) {
413398
(*mirrorNodes)[h][n] = userGraph.getLID((*mirrorNodes)[h][n]);
414399
},

0 commit comments

Comments
 (0)