在富岳超级计算机上扩展超大型图的PageRank算法
1. 引言
PageRank算法最初用于对网页的重要性进行排名,是搜索引擎的核心组成部分。它通常使用幂迭代法来高效计算随机矩阵的主特征向量。在这个过程中,网页及其之间的链接形成一个图,该图可以用稀疏邻接矩阵表示,PageRank算法就应用于这个矩阵上。
除了在搜索引擎中的应用,PageRank算法还广泛用于数据以图结构组织的场景,如引用网络、交通网格等。近年来,(个性化)PageRank还被用作图神经网络中衡量节点间通信的工具。
计算PageRank的最常见方法是幂迭代法,其核心是迭代稀疏矩阵 - 向量乘法(SpMV)。这使得PageRank与其他线性代数方法(如共轭梯度法)有相似之处,共轭梯度法常用于HPCG基准测试,以衡量超级计算机在内存和互连方面的性能。不过,HPCG基准测试使用的是稀疏对角矩阵,这种矩阵在分布式和并行计算中是理想情况,因为数据组织方式可最大程度减少缓存缺失。而我们关注的是PageRank算法在更接近网络或网页图数据上的应用,这些图的结构通常较差,其邻接矩阵与规则对角矩阵相差甚远。鉴于网页图的规模非常大,我们需要在拥有数十亿节点的图上高效扩展PageRank算法。为此,我们提出了PageRank算法的并行和分布式实现,并将其部署在顶级超级计算机富岳上,在数百个计算节点上测量该算法在超大型图上的可扩展性。
2. 背景与相关工作
PageRank算法从设计之初就将可扩展性作为主要目标。最初的研究处理的数据库包含7500万个URL和超过3亿个链接,此后数据规模增长到数十亿个元素。尽管该算法效率较高,但随着数据规模的不断增大,设计分布式版本的需求也日益增长,以便更好地利
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



