Cargando…

Fast GPU-Based Generation of Large Graph Networks From Degree Distributions

Synthetically generated, large graph networks serve as useful proxies to real-world networks for many graph-based applications. The ability to generate such networks helps overcome several limitations of real-world networks regarding their number, availability, and access. Here, we present the desig...

Descripción completa

Detalles Bibliográficos
Autores principales: Alam, Maksudul, Perumalla, Kalyan
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Frontiers Media S.A. 2021
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8663089/
https://www.ncbi.nlm.nih.gov/pubmed/34901842
http://dx.doi.org/10.3389/fdata.2021.737963
_version_ 1784613562540359680
author Alam, Maksudul
Perumalla, Kalyan
author_facet Alam, Maksudul
Perumalla, Kalyan
author_sort Alam, Maksudul
collection PubMed
description Synthetically generated, large graph networks serve as useful proxies to real-world networks for many graph-based applications. The ability to generate such networks helps overcome several limitations of real-world networks regarding their number, availability, and access. Here, we present the design, implementation, and performance study of a novel network generator that can produce very large graph networks conforming to any desired degree distribution. The generator is designed and implemented for efficient execution on modern graphics processing units (GPUs). Given an array of desired vertex degrees and number of vertices for each desired degree, our algorithm generates the edges of a random graph that satisfies the input degree distribution. Multiple runtime variants are implemented and tested: 1) a uniform static work assignment using a fixed thread launch scheme, 2) a load-balanced static work assignment also with fixed thread launch but with cost-aware task-to-thread mapping, and 3) a dynamic scheme with multiple GPU kernels asynchronously launched from the CPU. The generation is tested on a range of popular networks such as Twitter and Facebook, representing different scales and skews in degree distributions. Results show that, using our algorithm on a single modern GPU (NVIDIA Volta V100), it is possible to generate large-scale graph networks at rates exceeding 50 billion edges per second for a 69 billion-edge network. GPU profiling confirms high utilization and low branching divergence of our implementation from small to large network sizes. For networks with scattered distributions, we provide a coarsening method that further increases the GPU-based generation speed by up to a factor of 4 on tested input networks with over 45 billion edges.
format Online
Article
Text
id pubmed-8663089
institution National Center for Biotechnology Information
language English
publishDate 2021
publisher Frontiers Media S.A.
record_format MEDLINE/PubMed
spelling pubmed-86630892021-12-11 Fast GPU-Based Generation of Large Graph Networks From Degree Distributions Alam, Maksudul Perumalla, Kalyan Front Big Data Big Data Synthetically generated, large graph networks serve as useful proxies to real-world networks for many graph-based applications. The ability to generate such networks helps overcome several limitations of real-world networks regarding their number, availability, and access. Here, we present the design, implementation, and performance study of a novel network generator that can produce very large graph networks conforming to any desired degree distribution. The generator is designed and implemented for efficient execution on modern graphics processing units (GPUs). Given an array of desired vertex degrees and number of vertices for each desired degree, our algorithm generates the edges of a random graph that satisfies the input degree distribution. Multiple runtime variants are implemented and tested: 1) a uniform static work assignment using a fixed thread launch scheme, 2) a load-balanced static work assignment also with fixed thread launch but with cost-aware task-to-thread mapping, and 3) a dynamic scheme with multiple GPU kernels asynchronously launched from the CPU. The generation is tested on a range of popular networks such as Twitter and Facebook, representing different scales and skews in degree distributions. Results show that, using our algorithm on a single modern GPU (NVIDIA Volta V100), it is possible to generate large-scale graph networks at rates exceeding 50 billion edges per second for a 69 billion-edge network. GPU profiling confirms high utilization and low branching divergence of our implementation from small to large network sizes. For networks with scattered distributions, we provide a coarsening method that further increases the GPU-based generation speed by up to a factor of 4 on tested input networks with over 45 billion edges. Frontiers Media S.A. 2021-11-26 /pmc/articles/PMC8663089/ /pubmed/34901842 http://dx.doi.org/10.3389/fdata.2021.737963 Text en Copyright © 2021 Alam and Perumalla. https://creativecommons.org/licenses/by/4.0/This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.
spellingShingle Big Data
Alam, Maksudul
Perumalla, Kalyan
Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title_full Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title_fullStr Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title_full_unstemmed Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title_short Fast GPU-Based Generation of Large Graph Networks From Degree Distributions
title_sort fast gpu-based generation of large graph networks from degree distributions
topic Big Data
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8663089/
https://www.ncbi.nlm.nih.gov/pubmed/34901842
http://dx.doi.org/10.3389/fdata.2021.737963
work_keys_str_mv AT alammaksudul fastgpubasedgenerationoflargegraphnetworksfromdegreedistributions
AT perumallakalyan fastgpubasedgenerationoflargegraphnetworksfromdegreedistributions