中文

ARGO:一种用于多核处理器上可扩展GNN训练的自动调优运行时系统

分布式、并行与集群计算 2024-02-29 v2

摘要

随着图神经网络(GNN)的普及,PyTorch-Geometric(PyG)和Deep Graph Library(DGL)等库被提出;这些库已成为实现GNN的事实标准,因为它们提供了面向图的API,并专门设计用于管理图结构固有的稀疏性和不规则性。然而,这些库在多核处理器上表现出较差的可扩展性,这未能充分利用可用的平台资源并限制了性能。这是因为GNN训练是一种资源密集型工作负载,具有大量不规则数据访问,而现有库未能有效利用内存带宽。为应对这一挑战,我们提出了ARGO,这是一种用于GNN训练的新型运行时系统,可提供可扩展的性能。ARGO利用多进程和核心绑定技术来提高平台资源利用率。我们进一步开发了一个自动调优器,用于搜索多进程和核心绑定的最佳配置。该自动调优器自动工作,对用户完全透明。此外,自动调优器使ARGO能够适应各种平台、GNN模型、数据集等。我们在两个平台上对两个代表性GNN模型和四个广泛使用的数据集评估了ARGO。借助所提出的自动调优器,ARGO能够通过仅探索5%的设计空间来选择接近最优的配置。ARGO在具有112核的四路Ice Lake机器和具有64核的双路Sapphire Rapids机器上,分别将最先进的GNN库加速了高达5.06倍和4.54倍。最后,ARGO可以通过少量代码行无缝集成到广泛使用的GNN库(例如DGL、PyG)中,并加速GNN训练。

关键词

引用

@article{arxiv.2402.03671,
  title  = {ARGO: An Auto-Tuning Runtime System for Scalable GNN Training on Multi-Core Processor},
  author = {Yi-Chien Lin and Yuyang Chen and Sameh Gobriel and Nilesh Jain and Gopi Krishna Jha and Viktor Prasanna},
  journal= {arXiv preprint arXiv:2402.03671},
  year   = {2024}
}

备注

To appear in IEEE International Parallel and Distributed Processing Symposium (IPDPS) 2024