Parallel Sampling-Pipeline for Indefinite Stream of Heterogeneous Graphs using OpenCL for FPGAs

In the field of data science, a huge amount of data, generally represented as graphs, needs to be processed and analyzed. It is of utmost importance that this data be processed swiftly and efficiently to save time and energy. The volume and velocity of data, along with irregular access patterns in graph data structures, pose challenges in terms of analysis and processing. Further, a big chunk of time and energy is spent on analyzing these graphs on large compute clusters and/or data-centers. Filtering and refining of data using graph sampling techniques are one of the most effective ways to speed up the analysis. Efficient accelerators, such as FPGAs, have proven to significantly lower the energy cost of running an algorithm. To this end, we present the design and implementation of a parallel graph sampling technique, for a large number of input graphs streaming into a FPGA. A parallel approach using OpenCL for FPGAs was adopted to come up with a solution that is both time- and energy-efficient. We introduce a novel graph data structure, suitable for streaming graphs on FPGAs, that allows time- and memory-efficient representation of graphs. Our experiments show that our proposed technique is 3x faster and 2x more energy efficient as compared to serial CPU version of the algorithm.

[1]  Morgan C. Giddings,et al.  Peppy: proteogenomic search software. , 2013, Journal of proteome research.

[2]  David R. Karger,et al.  Randomized Approximation Schemes for Cuts and Flows in Capacitated Graphs , 2002, SIAM J. Comput..

[3]  Yong He,et al.  GRETNA: a graph theoretical network analysis toolbox for imaging connectomics , 2015, Front. Hum. Neurosci..

[4]  Marek Chrobak,et al.  Sampling large Internet topologies for simulation purposes , 2007, Comput. Networks.

[5]  Ramana Rao Kompella,et al.  Network Sampling via Edge-based Node Selection with Graph Induction , 2011 .

[6]  P. J. Narayanan,et al.  Accelerating Large Graph Algorithms on the GPU Using CUDA , 2007, HiPC.

[7]  Ravi Kumar,et al.  Extracting Large-Scale Knowledge Bases from the Web , 1999, VLDB.

[8]  Ravi Kumar,et al.  Trawling the Web for Emerging Cyber-Communities , 1999, Comput. Networks.

[9]  Hesham H. Ali,et al.  The Development of Parallel Adaptive Sampling Algorithms for Analyzing Biological Networks , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.

[10]  S. Berg Snowball Sampling—I , 2006 .

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

[12]  Matthieu Latapy,et al.  Fast generation of random connected graphs with prescribed degrees , 2005, ArXiv.

[13]  Fahad Saeed,et al.  Power-efficient and highly scalable parallel graph sampling using FPGAs , 2017, 2017 International Conference on ReConFigurable Computing and FPGAs (ReConFig).

[14]  Greg Brown,et al.  A performance and energy comparison of convolution on GPUs, FPGAs, and multicore processors , 2013, TACO.

[15]  Douglas D. Heckathorn,et al.  Respondent-driven sampling : A new approach to the study of hidden populations , 1997 .

[16]  Carlos Castillo,et al.  Effective web crawling , 2005, SIGF.

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

[18]  M. R. Martínez-Torresa,et al.  Examining the power-law distribution among eWOM communities : a characterisation approach of the Long Tail , 2015 .

[19]  Pili Hu,et al.  A Survey and Taxonomy of Graph Sampling , 2013, ArXiv.

[20]  Baozhen Shan,et al.  De novo peptide sequencing by deep learning , 2017, Proceedings of the National Academy of Sciences.

[21]  Xuelian Cai,et al.  The Improved Weighted Evolution Model of the AS-Level Internet Topology , 2015, ITITS.

[22]  Fahad Saeed,et al.  MS-REDUCE: an ultrafast technique for reduction of big mass spectrometry data for high-throughput processing , 2016, Bioinform..

[23]  Uppaluri S. R. Murty,et al.  Graph Theory with Applications , 1978 .

[24]  A. Nesvizhskii Proteogenomics: concepts, applications and computational strategies , 2014, Nature Methods.

[25]  Matthew J. Salganik,et al.  5. Sampling and Estimation in Hidden Populations Using Respondent-Driven Sampling , 2004 .

[26]  Ming Li,et al.  PEAKS: powerful software for peptide de novo sequencing by tandem mass spectrometry. , 2003, Rapid communications in mass spectrometry : RCM.

[27]  Implementing FPGA Design with the OpenCL Standard , 2010 .

[28]  Xiaotie Deng,et al.  Power-Law Distributions in a Two-Sided Market and Net Neutrality , 2016, WINE.

[29]  Walter Willinger,et al.  Respondent-Driven Sampling for Characterizing Unstructured Overlays , 2009, IEEE INFOCOM 2009.

[30]  Hesham H. Ali,et al.  A Parallel Graph Sampling Algorithm for Analyzing Gene Correlation Networks , 2011, ICCS.

[31]  Michalis Faloutsos,et al.  On power-law relationships of the Internet topology , 1999, SIGCOMM '99.