GraphMat: High performance graph analytics made productive

GraphMat: High performance graph analytics made productive
复制标题

DOI:
10.14778/2809974.2809983
复制
发表时间:
2015-03
期刊:
ArXiv
影响因子:
--
通讯作者:
N. Sundaram;N. Satish;Md. Mostofa Ali Patwary;Subramanya R. Dulloor;Michael J. Anderson;Satya Gautam Vadlamudi-Satya-Gautam-V
N. Sundaram;N. Satish;Md. Mostofa Ali Patwary;Subramanya R. Dulloor;Michael J. Anderson;Satya Gautam Vadlamudi-Satya-Gautam-V
中科院分区:
其他
文献类型:
--
作者:
N. Sundaram;N. Satish;Md. Mostofa Ali Patwary;Subramanya R. Dulloor;Michael J. Anderson;Satya Gautam Vadlamudi-Satya-Gautam-V

文献摘要

被引文献

相似文献

鉴于大规模图形分析的重要性日益增加,有必要在不影响生产力的情况下提高图形分析框架的性能。GraphMat是我们的解决方案,它弥合了用户友好的图形分析框架和本地手工优化代码之间的差距。GraphMat函数通过获取顶点程序并将其映射到后端高性能稀疏矩阵操作来实现。因此,我们在不牺牲性能的情况下获得了顶点编程框架的生产力优势。GraphMat是一个用c++编写的单节点多核图框架,与其他顶点编程框架相比,它使我们能够以相同的努力编写各种各样的图算法集。GraphMat的性能比GraphLab、CombBLAS和Galois等高性能框架快1.1-7倍。GraphMat的性能也与基于gpu的图形框架MapGraph相当,尽管它运行在CPU平台上,计算和带宽资源明显较低。与其他框架相比,它实现了更好的多核可伸缩性(24核上13-15X),并且在各种图形算法上比原生手工优化代码高出1.2倍。由于GraphMat性能主要依赖于一些可伸缩且易于理解的稀疏矩阵操作,因此GraphMat自然可以从未来硬件中不断增加的并行性趋势中受益。
Given the growing importance of large-scale graph analytics, there is a need to improve the performance of graph analysis frameworks without compromising on productivity. GraphMat is our solution to bridge this gap between a user-friendly graph analytics framework and native, hand-optimized code. GraphMat functions by taking vertex programs and mapping them to high performance sparse matrix operations in the backend. We thus get the productivity benefits of a vertex programming framework without sacrificing performance. GraphMat is a single-node multicore graph framework written in C++ which has enabled us to write a diverse set of graph algorithms with the same effort compared to other vertex programming frameworks. GraphMat performs 1.1-7X faster than high performance frameworks such as GraphLab, CombBLAS and Galois. GraphMat also matches the performance of MapGraph, a GPU-based graph framework, despite running on a CPU platform with significantly lower compute and bandwidth resources. It achieves better multicore scalability (13-15X on 24 cores) than other frameworks and is 1.2X off native, hand-optimized code on a variety of graph algorithms. Since GraphMat performance depends mainly on a few scalable and well-understood sparse matrix operations, GraphMat can naturally benefit from the trend of increasing parallelism in future hardware.