Abstract

Complex networks are set of entities in a relationship, modeled by graphs where nodes represent entities and edges between nodes represent relationships. Graph algorithms have inherent characteristics, including data-driven computations and poor locality. These characteristics expose graph algorithms to several challenges; this is because most well studied (parallel) abstractions and implementation are not suitable for them. This work shows how we use some complex-network properties, including community structure and heterogeneity of node degree, to tackle one of the main challenges: improving performance, by improving memory location and by providing proper thread scheduling. In this paper, we firstly formalize complex-network ordering for cache misses reducing as a well known NP-Complete problem, the optimal linear arrangement problem; we then propose cn-order an heuristic that outperforms very recent graph orders. Secondly, we formalize degree-aware scheduling problem as another well known NP-Complete problem, the multiple knapsack problem; then we propose two degree-aware heuristics to solve it. We finally validate our theoretical observations with experiments on a 32 cores NUMA machine with some graph algorithms and some stanford graph datasets. For example, some results with Pagerank algorithm and livejournal dataset show that using cn-order improves performance by reducing cache misses and hence time by 41%; and when cn-order is combined with degree-aware scheduling, time is reduced by 50% due to load balancing among threads.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.