The vertex-centric programming model, designed to improve the programmability in graph processing application writing, has attracted great attention over the years. However, shared memory frameworks that implement the vertex-centric interface all expose a common tradeoff: programmability against memory efficiency and performance. Our approach, iPregel, preserves vertex-centric programmability, while implementing optimisations for performance, and designing these so they are transparent to a user's application code, hence not impacting programmability. In this paper, we evaluate iPregel against FemtoGraph, whose characteristics are identical, an asynchronous counterpart GraphChi and the vertex-subset-centric framework Ligra. Our experiments include three of the most popular vertex-centric benchmark applications over 4 real-world publicly accessible graphs, which cover orders of magnitude between a million to a billion edges, measuring execution time and peak memory usage. Finally, we evaluate the programmability of each framework by comparing against Google's original Pregel framework. Experiments demonstrate that iPregel, like FemtoGraph, does not sacrifice vertex-centric programmability for additional performance and memory efficiency optimisations, which contrasts against GraphChi and Ligra. Sacrificing vertex-centric programmability allowed the latter to benefit from substantial performance and memory efficiency gains. We demonstrate that iPregel is up to 2300 times faster than FemtoGraph, as well as generating a memory footprint up to 100 times smaller. Ligra and GraphChi are up to 17000 and 700 times faster than FemtoGraph but, when comparing against iPregel, this maximum speed-up drops to 10. Furthermore, with PageRank, iPregel is the fastest overall. For memory efficiency, iPregel provides the same memory efficiency as Ligra and 3 to 6 times lighter than GraphChi on average.
翻译:用于改进图形处理应用程序写入程序程序的顶点程序模式多年来引起了极大关注。 然而, 用于执行顶点中心界面的共享记忆框架多年来都暴露了一个共同的权衡: 相对于内存效率和性能。 我们的方法, iPregel, 保存顶点中心程序性能, 同时对业绩进行优化, 并且设计这些模式, 从而对用户应用程序代码具有透明度, 从而不会影响程序性能。 在本文中, 我们用FemtoGraph 来评价 Femto Gragph 的 i Pregel 和 FemtoGraph 的特征相同, 其特征是非同步的对应的对应的GregChi 和顶点 的顶点子框架。 我们的实验包括四个真实世界最受欢迎的顶点中心基准应用程序中的三种功能性能应用, 覆盖了100万至10亿边缘之间的数量级, 测量执行时间和最高记忆使用时间。 最后, 我们通过比较Google的原Greal Pregel框架来评估每个框架的更小的可编程。 。 实验显示, iPregelf, 像 Fegregregel, 上比Fregregel 更快的比Fregregreal 更快, 更快的平点的平点 更快, 更快, 像Gregregrec, 更快, 更快, 更快, ligregreal-deal-refrefreal