Fast random graph generation

Today, several database applications call for the generation of random graphs. A fundamental, versatile random graph model adopted for that purpose is the Erdős-Rényi Γv,p model. This model can be used for directed, undirected, and multipartite graphs, with and without self-loops; it induces algorithms for both graph generation and sampling, hence is useful not only in applications necessitating the generation of random structures but also for simulation, sampling and in randomized algorithms. However, the commonly advocated algorithm for random graph generation under this model performs poorly when generating large graphs, and fails to make use of the parallel processing capabilities of modern hardware. In this paper, we propose PPreZER, an alternative, data parallel algorithm for random graph generation under the Erdős-Rényi model, designed and implemented in a graphics processing unit (GPU). We are led to this chief contribution of ours via a succession of seven intermediary algorithms, both sequential and parallel. Our extensive experimental study shows an average speedup of 19 for PPreZER with respect to the baseline algorithm.

[1]  Rajeev Motwani,et al.  Randomized Algorithms , 1995, SIGA.

[2]  Béla Bollobás,et al.  Random Graphs , 1985 .

[3]  Jeffrey Scott Vitter,et al.  Random sampling with a reservoir , 1985, TOMS.

[4]  Aristides Gionis,et al.  Assessing data mining results via swap randomization , 2007, TKDD.

[5]  Andrei Z. Broder,et al.  Graph structure in the Web , 2000, Comput. Networks.

[6]  Eduardo Sontag,et al.  Proximity of intracellular regulatory networks to monotone systems. , 2008, IET systems biology.

[7]  Anselmo Lastra,et al.  Fast Summed‐Area Table Generation and its Applications , 2005, Comput. Graph. Forum.

[8]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[9]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[10]  Christian Bettstetter,et al.  Analysis of Probabilistic Flooding: How Do We Choose the Right Coin? , 2009, 2009 IEEE International Conference on Communications.

[11]  S. K. Park,et al.  Random number generators: good ones are hard to find , 1988, CACM.

[12]  Kenneth E. Iverson,et al.  A programming language , 1899, AIEE-IRE '62 (Spring).

[13]  Yang Yang The linear-congruential-algorithm based lattice method in Asian Option Pricing , 2009 .

[14]  Christos Faloutsos,et al.  DOULION: counting triangles in massive graphs with a coin , 2009, KDD.

[15]  Donald F. Towsley,et al.  Resisting structural re-identification in anonymized social networks , 2010, The VLDB Journal.

[16]  Takashi Washio,et al.  Complete Mining of Frequent Patterns from Graphs: Mining Graph Data , 2003, Machine Learning.

[17]  William B. Langdon,et al.  A fast high quality pseudo random number generator for graphics processing units , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[18]  Ulrik Brandes,et al.  Efficient generation of large random networks. , 2005, Physical review. E, Statistical, nonlinear, and soft matter physics.

[19]  Matthew Papakipos,et al.  Pseudorandom number generation on the GPU , 2006, GH '06.

[20]  Xiaowei Ying,et al.  Graph Generation with Prescribed Feature Constraints , 2009, SDM.

[21]  N. Christakis,et al.  A Model of Genetic Variation in Human Social Networks , 2010 .

[22]  Peter Andras,et al.  Simulation of robustness against lesions of cortical networks , 2007, The European journal of neuroscience.

[23]  Jon M. Kleinberg,et al.  The Web as a Graph: Measurements, Models, and Methods , 1999, COCOON.

[24]  Christian P. Robert,et al.  Monte Carlo Statistical Methods (Springer Texts in Statistics) , 2005 .

[25]  John D. Owens,et al.  A Work-Efficient Step-Efficient Prefix Sum Algorithm , 2006 .

[26]  Rob Knight,et al.  Activating and inhibiting connections in biological network dynamics , 2008, Biology Direct.

[27]  S H Strogatz,et al.  Random graph models of social networks , 2002, Proceedings of the National Academy of Sciences of the United States of America.

[28]  Donald F. Towsley,et al.  The effect of network topology on the spread of epidemics , 2005, Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies..

[29]  Gemma C. Garriga,et al.  Randomization Techniques for Graphs , 2009, SDM.

[30]  Yao Zhang,et al.  Scan primitives for GPU computing , 2007, GH '07.

[31]  Paul Bratley,et al.  A guide to simulation , 1983 .

[32]  Lee W. Howes Efficient Random Number Generation and Application Using , 2007 .

[33]  Shubhabrata Sengupta,et al.  Efficient Parallel Scan Algorithms for GPUs , 2011 .

[34]  Paul Bratley,et al.  A guide to simulation (2nd ed.) , 1986 .

[35]  G. Marsaglia,et al.  The Ziggurat Method for Generating Random Variables , 2000 .

[36]  Edith Cohen,et al.  Search and replication in unstructured peer-to-peer networks , 2002, ICS '02.

[37]  Seth Pettie,et al.  Randomized minimum spanning tree algorithms using exponentially fewer random bits , 2008, TALG.

[38]  Yannis M. Ioannides Random Graphs and Social Networks: An Economics Perspective , 2005 .

[39]  William B. Langdon,et al.  A fast high quality pseudo random number generator for nVidia CUDA , 2009, GECCO '09.

[40]  William B. Langdon,et al.  A Many Threaded CUDA Interpreter for Genetic Programming , 2010, EuroGP.