ABSTRACT
Influence maximization is an advanced graph-theoretic operation that aims to identify a set of k most influential nodes in a network. The problem is of immense interest in many network applications (e.g., information spread in a social network, or contagion spread in an infectious disease network). The problem is however computationally expensive, needing several hours of compute time on even modest sized networks. There are numerous challenges to parallelizing influence maximization including its mixed workloads of latency- and throughput-bound steps, frequent and irregular access to graph data, large memory footprint, and potential load imbalanced workloads. In this work, we present the design and development of a new hybrid CPU+GPU parallel influence maximization algorithm (CuRipples) that is also capable of running on multi-GPU systems. Our approach uses techniques for efficiently sharing and scheduling of work between CPU and GPU, and data access and synchronization schemes to efficiently map the different steps of sampling and seed selection on a heterogeneous system. Our experiments on state-of-the-art multi-GPU systems show that our implementation is able to achieve drastic reductions in the time to solution, from hours to under a minute, while also significantly enhancing the approximation quality.
- Heiko Bauke. Tina's random number generator library, 2011.Google Scholar
- Richard Bellman. On a routing problem. Quarterly of applied mathematics, 16(1): 87--90, 1958.Google Scholar
- Vincent D Blondel, Jean-Loup Guillaume, Renaud Lambiotte, and Etienne Lefebvre. Fast unfolding of communities in large networks. Journal of statistical mechanics: theory and experiment, 2008(10):P10008, 2008.Google Scholar
- Christian Borgs, Michael Brautbar, Jennifer T. Chayes, and Brendan Lucier. Maximizing social influence in nearly optimal time. In Chandra Chekuri, editor, Proc. Annual ACM-SIAM Symposium on Discrete Algorithms, pages 946--957. SIAM, 2014.Google ScholarCross Ref
- Ümit V Çatalyürek, John Feo, Assefaw H Gebremedhin, Mahantesh Halappanavar, and Alex Pothen. Graph coloring algorithms for multi-core and massively multi-threaded architectures. Parallel Computing, 38(10):576--594, 2012.Google ScholarDigital Library
- Wei Chen, Yajun Wang, and Siyu Yang. Efficient influence maximization in social networks. In Proceedings of the 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Paris, France, June 28 - July 1, 2009, pages 199--208. ACM, 2009.Google ScholarDigital Library
- Wei Chen, Chi Wang, and Yajun Wang. Scalable influence maximization for prevalent viral marketing in large-scale social networks. In Proc. ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 1029--1038. ACM, 2010.Google ScholarDigital Library
- Edith Cohen, Daniel Delling, Thomas Pajor, and Renato F. Werneck. Sketch-based Influence Maximization and Computation: Scaling up with Guarantees. In Proc. ACM International Conference on Conference on Information and Knowledge Management, CIKM, pages 629--638. ACM, 2014.Google ScholarDigital Library
- Nvidia Corporation. Nvidia Tesla V100 GPU Architecture. Technical report, Nvidia Corporation, 2017.Google Scholar
- Nvidia Corporation. nvGRAPH, last accessed 2020. URL https://developer.nvidia.com/nvgraph.Google Scholar
- Nan Du, Le Song, Manuel Gomez-Rodriguez, and Hongyuan Zha. Scalable Influence Estimation in Continuous-Time Diffusion Networks. In Advances in Neural Information Processing Systems 26, pages 3147--3155, 2013.Google Scholar
- Lester Randolph Ford Jr and Delbert Ray Fulkerson. Flows in networks. Princeton university press, 2015.Google Scholar
- Amit Goyal, Wei Lu, and Laks V. S. Lakshmanan. CELF++ : optimizing the greedy algorithm for influence maximization in social networks. In Proc. International Conference on World Wide Web, WWW, pages 47--48. ACM, 2011.Google ScholarDigital Library
- David Kempe, Jon M. Kleinberg, and Éva Tardos. Maximizing the spread of influence through a social network. In Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Washington, DC, USA, August 24 - 27, 2003, pages 137--146. ACM, 2003.Google ScholarDigital Library
- Jinha Kim, Seung-Keol Kim, and Hwanjo Yu. Scalable and parallelizable processing of influence maximization for large-scale social networks? In Proc. IEEE International Conference on Data Engineering, ICDE, pages 266--277. IEEE Computer Society, 2013.Google Scholar
- Andrew Lenharth, Donald Nguyen, and Keshav Pingali. Parallel graph analytics. Communications of the ACM, 59(5):78--87, 2016.Google ScholarDigital Library
- Jure Leskovec and Andrej Krevl. SNAP Datasets: Stanford large network dataset collection. http://snap.stanford.edu/data, June 2014.Google Scholar
- Jure Leskovec, Andreas Krause, Carlos Guestrin, Christos Faloutsos, Jeanne M. VanBriesen, and Natalie S. Glance. Cost-effective outbreak detection in networks. In Proc. ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 420--429. ACM, 2007.Google ScholarDigital Library
- Xiaodong Liu, Mo Li, Shanshan Li, Shaoliang Peng, Xiangke Liao, and Xiaopei Lu. IMGPU: GPU-Accelerated Influence Maximization in Large-Scale Social Networks. IEEE Trans. Parallel Distrib. Syst., 25(1):136--145, 2014. URL https://doi.org/10.1109/TPDS.2013.41. Google ScholarDigital Library
- Hao Lu, Mahantesh Halappanavar, Daniel Chavarría-Miranda, Assefaw Gebremedhin, and Ananth Kalyanaraman. Balanced coloring for parallel computing applications. In 2015 IEEE International Parallel and Distributed Processing Symposium, pages 7--16. IEEE, 2015.Google ScholarDigital Library
- Hao Lu, Mahantesh Halappanavar, and Ananth Kalyanaraman. Parallel heuristics for scalable community detection. Parallel Computing, 47:19--37, 2015.Google ScholarDigital Library
- Brendan Lucier, Joel Oren, and Yaron Singer. Influence at Scale: Distributed Computation of Complex Contagion in Networks. In Proc. ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 735--744. ACM, 2015.Google ScholarDigital Library
- Michel Minoux. Accelerated greedy algorithms for maximizing submodular set functions. Optimization Techniques, pages 234--243, 1978.Google ScholarCross Ref
- Marco Minutoli, Mahantesh Halappanavar, and Ananth Kalyanaraman. Ripples: Open source software. https://github.com/pnnl/ripples, 2019.Google Scholar
- Marco Minutoli, Mahantesh Halappanavar, Ananth Kalyanaraman, Arun V. Sathanur, Ryan Mcclure, and Jason McDermott. Fast and Scalable Implementations of Influence Maximization Algorithms. In 2019 IEEE International Conference on Cluster Computing, CLUSTER 2019, Albuquerque, NM, USA, September 23-26, 2019, pages 1--12. IEEE, 2019. URL https://doi.org/10.1109/CLUSTER.2019.8890991. Google ScholarCross Ref
- Edward F Moore. The shortest path through a maze. In Proc. Int. Symp. Switching Theory, 1959, pages 285--292, 1959.Google Scholar
- Koushik Pal, Zissis Poulos, Edward Kim, and Andreas G. Veneris. Fast GPU-Based Influence Maximization Within Finite Deadlines via Node-Level Parallelism. In Petra Perner, editor, Advances in Data Mining. Applications and Theoretical Aspects - 17th Industrial Conference, ICDM 2017, New York, NY, USA, July 12-13, 2017, Proceedings, volume 10357 of Lecture Notes in Computer Science, pages 151--165. Springer, 2017. URL https://doi.org/10.1007/978-3-319-62701-4_12. Google ScholarCross Ref
- Gal Sadeh, Edith Cohen, and Haim Kaplan. Sample Complexity Bounds for Influence Maximization. In Thomas Vidick, editor, 11th Innovations in Theoretical Computer Science Conference, ITCS 2020, January 12-14, 2020, Seattle, Washington, USA, volume 151 of LIPIcs, pages 29:1--29:36. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2020. URL https://doi.org/10.4230/LIPIcs.ITCS.2020.29. Google ScholarCross Ref
- Youze Tang, Xiaokui Xiao, and Yanchen Shi. Influence maximization: near-optimal time complexity meets practical efficiency. In International Conference on Management of Data, SIGMOD, pages 75--86. ACM, 2014.Google ScholarDigital Library
- Youze Tang, Yanchen Shi, and Xiaokui Xiao. Influence Maximization in Near-Linear Time: A Martingale Approach. In Proc. 2015 ACM SIGMOD International Conference on Management of Data, pages 1539--1554. ACM, 2015.Google Scholar
- Vijay V. Vazirani. Approximation algorithms. Springer, 2001.Google ScholarCross Ref
- Hong Wu, Kun Yue, Xiaodong Fu, Yujie Wang, and Weiyi Liu. Parallel Seed Selection for Influence Maximization Based on k-shell Decomposition. In Collaborate Computing: Networking, Applications and Worksharing - 12th International Conference, CollaborateCom 2016, Beijing, China, November 10-11, 2016, Proceedings, volume 201 of Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, pages 27--36. Springer, 2016.Google Scholar
Recommendations
GPUpd: a fast and scalable multi-GPU architecture using cooperative projection and distribution
MICRO-50 '17: Proceedings of the 50th Annual IEEE/ACM International Symposium on MicroarchitectureGraphics Processing Unit (GPU) vendors have been scaling single-GPU architectures to satisfy the ever-increasing user demands for faster graphics processing. However, as it gets extremely difficult to further scale single-GPU architectures, the vendors ...
Towards High-Level Programming of Multi-GPU Systems Using the SkelCL Library
IPDPSW '12: Proceedings of the 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD ForumApplication programming for GPUs (Graphics Processing Units) is complex and error-prone, because the popular approaches - CUDA and OpenCL - are intrinsically low-level and offer no special support for systems consisting of multiple GPUs. The SkelCL ...
Techniques for the parallelization of unstructured grid applications on multi-GPU systems
PMAM '12: Proceedings of the 2012 International Workshop on Programming Models and Applications for Multicores and ManycoresCurrently the set of scientific applications suitable for running on GPUs has increased due to the computational power of GPUs and the availability of programming languages that make more approachable writing scientific applications for GPUs. However, ...
Comments