Improving Streaming Graph Processing Performance using Input Knowledge
Improving Streaming Graph Processing Performance using Input Knowledge
复制标题
DOI:
10.1145/3466752.3480096
复制
发表时间:
2021-10
期刊:
影响因子:
--
通讯作者:
Abanti Basak;Zheng Qu;Jilan Lin;Alaa R. Alameldeen;Zeshan A. Chishti;Yufei Ding;Yuan Xie
中科院分区:
文献类型:
--
作者:
Abanti Basak;Zheng Qu;Jilan Lin;Alaa R. Alameldeen;Zeshan A. Chishti;Yufei Ding;Yuan Xie
Streaming graphs are ubiquitous in today’s big data era. Prior work has improved the performance of streaming graph workloads without taking input characteristics into account. In this work, we demonstrate that input knowledge-driven software and hardware co-design is critical to optimize the performance of streaming graph processing. To improve graph update efficiency, we first characterize the performance trade-offs of input-oblivious batch reordering. Guided by our findings, we propose input-aware batch reordering to adaptively reorder input batches based on their degree distributions. To complement adaptive batch reordering, we propose updating graphs dynamically, based on their input characteristics, either in software (via update search coalescing) or in hardware (via acceleration support). To improve graph computation efficiency, we present input-aware work aggregation which adaptively modulates the computation granularity based on inter-batch locality characteristics. Evaluated across 260 workloads, our input-aware techniques provide on average 4.55 × and 2.6 × improvement in graph update performance for different input types (on top of eliminating the performance degradation from input-oblivious batch reordering). The graph compute performance is improved by 1.26 × (up to 2.7 ×).