Graphs analytics are at the heart of a broad range of applications such as drug discovery, page ranking, transportation systems, and recommendation systems. When graph size exceeds memory size, out-of-core graph processing is needed. For the widely used external memory graph processing systems, accessing storage becomes the bottleneck. We make the observation that nearly all graph algorithms have a dynamically varying number of active vertices that must be processed in each iteration. However, existing graph processing frameworks, such as GraphChi, load the entire graph in each iteration even if a small fraction of the graph is active. This limitation is due to the structure of the data storage used by these systems. In this work, we propose to use a compressed sparse row (CSR) based graph storage that is more amenable for selectively loading only a few active vertices in each iteration. But CSR based graph processing suffers from random update propagation to many target vertices. To solve this challenge we propose to use a multi-log update mechanism which logs updates separately, rather than directly update the active edge in a graph. Our proposed multi-log system maintains a separate log per each vertex interval. This separation enables us to efficiently process each vertex interval by just loading the corresponding log. Over the current state of the art out-of-core graph processing framework, our evaluation results show that the PartitionedVC framework improves performance by up to $16.40\times$, $1.13\times$, $1.64\times$, $1.38\times$, and $2.76\times$ for the widely used breadth-first search, pagerank, community detection, graph coloring, and the maximal independent set applications, respectively.


翻译:图表分析是药物发现、页面排名、运输系统和建议系统等广泛应用的核心。 当图形大小超过内存大小时, 需要超出核心的图形处理。 对于广泛使用的外部内存图处理系统, 访问存储会成为瓶颈。 我们观察到几乎所有图表算法都有动态不同的主动顶点, 在每个迭代中必须处理。 然而, 现有的图表处理框架, 如 GraphChi, 将整张图表加在每迭代中, 即使图表中有一小部分是活动的。 这一限制是由于这些系统所使用的数据存储结构造成的。 对于广泛使用的外部内存图处理系统, 需要使用一个压缩的稀薄的行( CSR) 基图存储系统, 它更便于有选择地在每次迭代代数中只装几个活跃的顶点。 但是基于 CSR 的图形处理程序有随机更新传播到许多目标顶点。 为了应对这一挑战, 我们提议使用一个多logal更新的图表, 而不是直接更新一个活跃的平面的平面的平面图。 我们提议的多式平价框架, 将每个平面的平面平面的平面的平面的平面运行系统使用一个不同的平面记录, 显示每个平面的平面的平面的平面记录, 。

0
下载
关闭预览

相关内容

因果图,Causal Graphs,52页ppt
专知会员服务
238+阅读 · 2020年4月19日
《DeepGCNs: Making GCNs Go as Deep as CNNs》
专知会员服务
30+阅读 · 2019年10月17日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
144+阅读 · 2019年10月12日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
90+阅读 · 2019年10月10日
Hierarchically Structured Meta-learning
CreateAMind
23+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
25+阅读 · 2019年5月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
8+阅读 · 2018年12月28日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
Arxiv
8+阅读 · 2019年5月20日
Arxiv
7+阅读 · 2018年3月21日
Arxiv
8+阅读 · 2018年3月20日
VIP会员
相关资讯
Hierarchically Structured Meta-learning
CreateAMind
23+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
25+阅读 · 2019年5月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
8+阅读 · 2018年12月28日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
Top
微信扫码咨询专知VIP会员