Computer Science > Distributed, Parallel, and Cluster Computing
[Submitted on 4 Jun 2014 (v1), revised 17 Nov 2014 (this version, v2), latest version 26 May 2015 (v3)]
Title:Parallel Algorithm for Generating Massive Random Networks with a Given Sequence of Expected Degrees
View PDFAbstract:Random networks are widely used for modeling and analyzing complex processes. Many mathematical models for random networks have been proposed to capture the diversity of the real-world processes. Capturing the degree distribution is one of the most important aspects of these models. Many of the models can only produce random networks with predefined degree distribution. Chung--Lu model is a general random network model, which can produce networks with any arbitrary degree distribution. The complex systems we deal with are growing larger, and generating random networks with billions of nodes and edges or more has become a necessity. Generation of such massive networks requires efficient and parallel algorithms. In this paper, we present an MPI-based distributed memory parallel algorithm for generating massive random networks using Chung--Lu model with a given expected degree sequence. The main challenge in designing this parallel algorithm is balancing computational load among the processors. We study several load balancing schemes with rigorous theoretical and experimental analysis and present a novel parallel algorithm for load balancing. The proposed parallel algorithm for Chung--Lu model, coupled with the parallel load balancing algorithm, achieves a very good load balancing and scale very well to a large number of processors. It can generate massive networks with 250 billion edges in eight minutes using 1024 processors.
Submission history
From: Maksudul Alam [view email][v1] Wed, 4 Jun 2014 21:29:38 UTC (407 KB)
[v2] Mon, 17 Nov 2014 03:56:44 UTC (407 KB)
[v3] Tue, 26 May 2015 02:20:40 UTC (590 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
Connected Papers (What is Connected Papers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.