IntersectX: An Accelerator for Graph Mining

Graph mining applications try to find all embeddings that match specific patterns. Compared to the traditional graph computation, graph mining applications are computationintensive. The state-of-the-art method, pattern enumeration, specifically constructs the embeddings that satisfy the pattern, leading to significant speedups over the exhaustive check method. However, the key operation intersection poses challenges to conventional architectures and takes substantial execution time. In this paper, we propose IntersectX, a vertical approach to accelerate graph mining with stream instruction set extension and architectural supports based on conventional processor. The stream based ISA can considered as a natural extension to the traditional instructions for ordinary scalar values. We develop the IntersectX architecture composed of specialized mechanisms that efficiently implement the stream ISA extensions, including: (1) Stream Mapping Table (SMT) that records the mapping between stream ID and stream register; (2) the Stream Cache (S-Cache) that enables efficient stream data movements; (3) tracking the dependency between streams with a property of intersection; (4) Stream Value Processing Unit (SVPU) that implements sparse value computations; and (5) the nested intersection translator that generates micro-op sequences for implementing nested intersections. We implement IntersectX ISA and architecture on zsim [42]. We use 7 popular graph mining applications (triangle/three-chain/tailed-traingle counting, 3-motif mining, 4/5-clique counting, and FSM) on 10 real graphs. Our experiments show that IntersectX significantly outperforms our CPU baseline and GRAMER, a state-of-the-art graph mining accelerator. IntersectX’s speedups over the CPU baseline and GRAMER [53] are on average 10.7×and 40.1×(up to 83.9×and 181.8×), respectively.

[1]  Keshav Pingali,et al.  A lightweight infrastructure for graph analytics , 2013, SOSP.

[2]  Christos Faloutsos,et al.  Graph evolution: Densification and shrinking diameters , 2006, TKDD.

[3]  Ryan A. Rossi,et al.  The Network Data Repository with Interactive Graph Analytics and Visualization , 2015, AAAI.

[4]  Yangdong Deng,et al.  GraphABCD: Scaling Out Graph Analytics with Asynchronous Block Coordinate Descent , 2020, 2020 ACM/IEEE 47th Annual International Symposium on Computer Architecture (ISCA).

[5]  Yanzhi Wang,et al.  GraphQ: Scalable PIM-Based Graph Processing , 2019, MICRO.

[6]  Guy E. Blelloch,et al.  Ligra: a lightweight graph processing framework for shared memory , 2013, PPoPP '13.

[7]  Amy Nicole Langville,et al.  A Reordering for the PageRank Problem , 2005, SIAM J. Sci. Comput..

[8]  Yiran Chen,et al.  GraphR: Accelerating Graph Processing Using ReRAM , 2017, 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[9]  Tongping Liu,et al.  GraphZero: Breaking Symmetry for Efficient Graph Mining , 2019, ArXiv.

[10]  Srinivasan Parthasarathy,et al.  Fractal: A General-Purpose Graph Pattern Mining System , 2019, SIGMOD Conference.

[11]  Siegfried Nijssen,et al.  What Is Frequent in a Single Graph? , 2007, PAKDD.

[12]  Yu Wang,et al.  GraphH: A Processing-in-Memory Architecture for Large-Scale Graph Processing , 2019, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[13]  Nael Abu-Ghazaleh,et al.  GraphPulse: An Event-Driven Hardware Accelerator for Asynchronous Graph Processing , 2020, 2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[14]  Christoforos E. Kozyrakis,et al.  ZSim: fast and accurate microarchitectural simulation of thousand-core systems , 2013, ISCA.

[15]  David A. Bader,et al.  Graph Partitioning and Graph Clustering , 2013 .

[16]  Ian T. Foster,et al.  Mapping the Gnutella Network: Properties of Large-Scale Peer-to-Peer Systems and Implications for System Design , 2002, ArXiv.

[17]  Aamer Jaleel,et al.  ExTensor: An Accelerator for Sparse Tensor Algebra , 2019, MICRO.

[18]  D. Shaw,et al.  The Methods behind the Madness: Presidential Electoral College Strategies, 1988-1996 , 1999, The Journal of Politics.

[19]  Ozcan Ozturk,et al.  Energy Efficient Architecture for Graph Analytics Accelerators , 2016, 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).

[20]  Panos Kalnis,et al.  GRAMI: Frequent Subgraph and Pattern Mining in a Single Large Graph , 2014, Proc. VLDB Endow..

[21]  Jure Leskovec,et al.  Predicting positive and negative links in online social networks , 2010, WWW '10.

[22]  Alex Brooks,et al.  Gluon: a communication-optimizing substrate for distributed heterogeneous graph analytics , 2018, PLDI.

[23]  Yi Xu,et al.  GraphPi: High Performance Graph Pattern Matching through Effective Redundancy Elimination , 2020, SC20: International Conference for High Performance Computing, Networking, Storage and Analysis.

[24]  Mohammed J. Zaki,et al.  QCRI-TR-2015-005 Arabesque : A System for Distributed Graph Mining Extended version , 2018 .

[25]  Wenguang Chen,et al.  Gemini: A Computation-Centric Distributed Graph Processing System , 2016, OSDI.

[26]  Long Zheng,et al.  A Locality-Aware Energy-Efficient Accelerator for Graph Mining Applications , 2020, 2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[27]  Alexandru Topirceanu,et al.  A network motif based approach for classifying online social networks , 2014, 2014 IEEE 9th IEEE International Symposium on Applied Computational Intelligence and Informatics (SACI).

[28]  Xuhao Chen,et al.  Pangolin: An Efficient and Flexible Graph Pattern Mining System on CPU and GPU. , 2020 .

[29]  Xin Jin,et al.  ASAP: Fast, Approximate Graph Pattern Mining at Scale , 2018, OSDI.

[30]  Peter Sanders,et al.  Better Approximation of Betweenness Centrality , 2008, ALENEX.

[31]  Jian Weng,et al.  Towards General Purpose Acceleration by Exploiting Common Data-Dependence Forms , 2019, MICRO.

[32]  Jure Leskovec,et al.  Signed networks in social media , 2010, CHI.

[33]  Shahadat Uddin,et al.  Dyad and Triad Census Analysis of Crisis Communication Network , 2013 .

[34]  Kai Wang,et al.  RStream: Marrying Relational Algebra with Streaming for Efficient Graph Mining on A Single Machine , 2018, OSDI.

[35]  Pedro Ribeiro,et al.  A Survey on Subgraph Counting , 2019, ACM Comput. Surv..

[36]  T. N. Vijaykumar,et al.  SparTen: A Sparse Tensor Accelerator for Convolutional Neural Networks , 2019, MICRO.

[37]  Timothy A. Davis,et al.  The university of Florida sparse matrix collection , 2011, TOMS.

[38]  Joseph M. Hellerstein,et al.  GraphLab: A New Framework For Parallel Machine Learning , 2010, UAI.

[39]  Bo Wu,et al.  AutoMine: harmonizing high-level abstraction and high performance for graph mining , 2019, SOSP.

[40]  Christos Faloutsos,et al.  Edge Weight Prediction in Weighted Signed Networks , 2016, 2016 IEEE 16th International Conference on Data Mining (ICDM).

[41]  Jure Leskovec,et al.  Defining and evaluating network communities based on ground-truth , 2012, Knowledge and Information Systems.

[42]  Josep Torrellas,et al.  Bulk Disambiguation of Speculative Threads in Multiprocessors , 2006, 33rd International Symposium on Computer Architecture (ISCA'06).

[43]  Christoforos E. Kozyrakis,et al.  GraphP: Reducing Communication for PIM-Based Graph Processing with Efficient Data Partition , 2018, 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[44]  Jérôme Kunegis,et al.  KONECT: the Koblenz network collection , 2013, WWW.

[45]  Keval Vora,et al.  Peregrine: a pattern-aware graph mining system , 2020, EuroSys.

[46]  Jon M. Kleinberg,et al.  Group formation in large social networks: membership, growth, and evolution , 2006, KDD '06.

[47]  Aart J. C. Bik,et al.  Pregel: a system for large-scale graph processing , 2010, SIGMOD Conference.

[48]  Joseph Gonzalez,et al.  PowerGraph: Distributed Graph-Parallel Computation on Natural Graphs , 2012, OSDI.

[49]  Josep Torrellas,et al.  OmniOrder: Directory-based conflict serialization of transactions , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[50]  Jure Leskovec,et al.  Community Structure in Large Networks: Natural Cluster Sizes and the Absence of Large Well-Defined Clusters , 2008, Internet Math..

[51]  Christos Faloutsos,et al.  Graphs over time: densification laws, shrinking diameters and possible explanations , 2005, KDD '05.