Intel Xeon Phi上的广度优先搜索向量化
分布式、并行与集群计算
2016-04-12 v1
摘要
广度优先搜索(BFS)是图算法的基石,近来已用于包括社交网络、图数据库和网络搜索在内的多种应用中的大规模信息分析。由于其重要性,已利用多种不同的并行编程模型和体系结构来优化BFS。然而,由于不规则的内存访问模式以及大图的非结构化特性,其高效并行化是一项挑战。Xeon Phi是一种可作为现成加速器使用的海量并行体系结构,包含带有优化的散射(scatter)与聚集(gather)功能的强大512位向量单元。鉴于其潜在优势,在该体系结构上的图遍历相关研究是一个活跃领域。我们提出了一系列实验,探索Xeon Phi的体系结构特征以及如何在自顶向下(top-down)的BFS算法中最好地利用它们,但这些技术也可应用于当前最先进的混合自顶向下加自底向上(top-down plus bottom-up)算法。我们专注于通过开发一种改进的、高度向量化的OpenMP并行算法来利用向量单元,该算法使用向量内建指令(vector intrinsics),并理解数据对齐与预取的使用。此外,我们研究了超线程(hyperthreading)与线程亲和性(thread affinity)对性能的影响,这一主题在文献中似乎研究不足。结果,我们实现了在实验所用Xeon Phi版本上我们认为是最快的自顶向下BFS算法。本文给出的向量化BFS自顶向下源代码可应要求作为免费软件提供。
引用
@article{arxiv.1604.02844,
title = {Breadth First Search Vectorization on the Intel Xeon Phi},
author = {Mireya Paredes and Graham Riley and Mikel Lujan},
journal= {arXiv preprint arXiv:1604.02844},
year = {2016}
}