Kaleidoscope : Graph Analytics on Evolving Graphs Steffen Maass, Taesoo Kim Georgia Institute of Technology April 23, 2018 Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 1 / 7
About me 4th year PhD Student at Georgia Tech Advisor: Taesoo Kim Research Area: Systems Operating Systems, Heterogeneous Systems, and Graph Processing Thesis work: Processing of Evolving Graphs Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 2 / 7
Kaleidoscope - Overview Problem: Low locality and high memory overhead for processing evolving graphs These problems hinder adoption of systems for evolving graphs, fallback: batch processing (large latency) We use a tiled representation of the evolving graph that mitigates memory overheads while allowing for higher processing performance Kaleidoscope can help with the execution of more complicated algorithms on larger graphs in less time. Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 3 / 7
Specific problem: Insertion performance Inserting edges into Stinger in batches Observe performance of insertions over edges present in graph Insertion Cost per Batch Throughput of Insertions 2.0 140k 120k 1.5 Insertions (edges/s) Insertion cost (s) 100k 80k 1.0 60k 40k 0.5 20k 0.0 0M 2M 4M 6M 8M 10M 0M 2M 4M 6M 8M 10M # Edges # Edges ⇒ Insertion performance collapses with > 1M edges Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 4 / 7
Specific problem: Memory overhead Inserting edges into Stinger in batches Observe impact on execution time of evolving PageRank Used Memory Pagerank Time (per iteration) 2.5 0.5 Pagerank execution (s) 2.0 0.4 Memory (GB) 1.5 0.3 1.0 0.2 0.5 0.1 0.0 0.0 0M 2M 4M 6M 8M 10M 0M 2M 4M 6M 8M 10M # Edges # Edges ⇒ Execution time grows super-linearly due to insertion overhead Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 5 / 7
Goals for Kaleidoscope Core design idea: Use tiled graph representation Allows for: Lower memory overhead by using localized identifiers Asynchronous graph compaction Improvements in locality with space-filling curves Also enables a straight-forward multi-core strategy by load-balancing tiles across processors Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 6 / 7
Conclusion Kaleidoscope aims at addressing three problems when processing evolving graphs: Large memory footprint Synchronous compaction Low locality Kaleidoscope proposes a tiled data structure to address these problems: Provides localized graphs Enables asynchronous compaction Exploits locality-optimizing space-filling curves Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 7 / 7
Conclusion Kaleidoscope aims at addressing three problems when processing evolving graphs: Large memory footprint Synchronous compaction Low locality Kaleidoscope proposes a tiled data structure to address these problems: Provides localized graphs Enables asynchronous compaction Exploits locality-optimizing space-filling curves Thanks! Steffen Maass Kaleidoscope : Evolving Graph Analytics April 23, 2018 7 / 7
Recommend
More recommend