From b3279a486b52de0e3d73546bd33b907f735562a0 Mon Sep 17 00:00:00 2001 From: Meyer Zinn Date: Fri, 19 Apr 2024 13:41:07 +0000 Subject: [PATCH] wip --- libgalois/include/galois/graphs/LS_LC_CSR_Graph.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libgalois/include/galois/graphs/LS_LC_CSR_Graph.h b/libgalois/include/galois/graphs/LS_LC_CSR_Graph.h index bf16b29de..ae2f348e6 100644 --- a/libgalois/include/galois/graphs/LS_LC_CSR_Graph.h +++ b/libgalois/include/galois/graphs/LS_LC_CSR_Graph.h @@ -335,19 +335,24 @@ class LS_LC_CSR_Graph : private boost::noncopyable { if (m_vertices.empty() || edges.empty()) return; std::vector pfx_sum(edges.size()); + galois::GAccumulator old_degree_total; + old_degree_total.reset(); galois::do_all( galois::iterate(0ul, edges.size()), [&](size_t idx) { auto const vertex_id = edges[idx].first; auto const old_degree = getDegree(vertex_id); - pfx_sum[idx] = old_degree + edges[idx].second.size(); + old_degree_total += old_degree; + pfx_sum[idx] = old_degree + edges[idx].second.size(); }, galois::loopname("ComputeVertexDegrees")); for (size_t i = 1; i < pfx_sum.size(); ++i) pfx_sum[i] += pfx_sum[i - 1]; - auto const num_new_edges = pfx_sum.back(); + std::cout << "old degrees total: " << old_degree_total.reduce() + << ", new degrees total: " << num_new_edges << std::endl; + auto const start = m_edges_tail.fetch_add(num_new_edges, std::memory_order_relaxed); if (m_edges[1].size() < start + num_new_edges)