Making caches work for graph analytics

Making caches work for graph analytics
复制标题

DOI:
10.1109/bigdata.2017.8257937
复制
发表时间:
2016-08
期刊:
2017 IEEE International Conference on Big Data (Big Data)
影响因子:
--
通讯作者:
Yunming Zhang;Vladimir Kiriansky;Charith Mendis;Saman P. Amarasinghe;M. Zaharia
Yunming Zhang;Vladimir Kiriansky;Charith Mendis;Saman P. Amarasinghe;M. Zaharia
中科院分区:
其他
文献类型:
--
作者:
Yunming Zhang;Vladimir Kiriansky;Charith Mendis;Saman P. Amarasinghe;M. Zaharia

文献摘要

被引文献

相似文献

在当今的高性能图框架中实施的大规模应用程序在极大的现代硬件系统中,而许多图形框架在优化这些应用程序方面取得了长足的进步,我们表明,在最多可在最快的框架上实现了最多5倍的速度改进的缓存利用率。但是,我们发现盲目应用这种技术是无效的,因为缓存和DRAM之间的性能差距要小得多,需要新的设计,以实现可伸缩性的性能,而我们呈现低空的开销。分割,将顶点分解为适合最后一个级别缓存的段,并根据每个子图中的随机访问将图表分配为子图。一次限于一个细分市场,消除了对DRAM的随机速度较慢。对于Pagerank,协作过滤,标签传播和中心性,比最新的图形框架的最佳成果,包括GraphMat,Ligra和网格图。
Large-scale applications implemented in today's high performance graph frameworks heavily underutilize modern hardware systems. While many graph frameworks have made substantial progress in optimizing these applications, we show that it is still possible to achieve up to 5× speedups over the fastest frameworks by greatly improving cache utilization. Previous systems have applied out-of-core processing techniques from the memory/disk boundary to the cache/DRAM boundary. However, we find that blindly applying such techniques is ineffective because the much smaller performance gap between cache and DRAM requires new designs for achieving scalable performance and low overhead. We present Cagra, a cache optimized inmemory graph framework. Cagra uses a novel technique, CSR Segmenting, to break the vertices into segments that fit in last level cache, and partitions the graph into subgraphs based on the segments. Random accesses in each subgraph are limited to one segment at a time, eliminating the much slower random accesses to DRAM. The intermediate updates from each subgraph are written into buffers sequentially and later merged using a low overhead parallel cache-aware merge. Cagra achieves speedups of up to 5× for PageRank, Collaborative Filtering, Label Propagation and Betweenness Centrality over the best published results from state-of-the-art graph frameworks, including GraphMat, Ligra and GridGraph.