近日,阿里云機(jī)器學(xué)習(xí)平臺(tái)PAI主導(dǎo)的論文《圖神經(jīng)網(wǎng)絡(luò)統(tǒng)一圖算子抽象uGrapher》被ASPLOS 2023錄取。論文通過抽象統(tǒng)一的的高性能圖算子接口來自適應(yīng)探索它們在不同圖數(shù)據(jù)集上的最佳并行執(zhí)行策略, 這是首個(gè)在圖神經(jīng)網(wǎng)絡(luò)上利用自適應(yīng)的并行策略,在不同圖數(shù)據(jù)和不同圖算子中探索高性能計(jì)算優(yōu)化的研究工作。
ASPLOS是計(jì)算機(jī)系統(tǒng)領(lǐng)域的頂級(jí)國際會(huì)議,涉及體系結(jié)構(gòu)、編程語言和操作系統(tǒng)等多個(gè)方向,尤其重視不同方向之間的交叉,該會(huì)議曾推動(dòng)了多核處理器、虛擬化、RAID、RISC、深度學(xué)習(xí)處理器等計(jì)算機(jī)系統(tǒng)領(lǐng)域的核心創(chuàng)新,在學(xué)術(shù)和工業(yè)界都有巨大的影響力。
此次入選意味著阿里云機(jī)器學(xué)習(xí)平臺(tái)PAI在圖神經(jīng)網(wǎng)絡(luò)高性能計(jì)算優(yōu)化領(lǐng)域達(dá)到了全球業(yè)界先進(jìn)水平,獲得了國際學(xué)者的認(rèn)可,展現(xiàn)了中國機(jī)器學(xué)習(xí)系統(tǒng)技術(shù)創(chuàng)新在國際上的競爭力。
圖神經(jīng)網(wǎng)絡(luò)相對(duì)于傳統(tǒng)深度學(xué)習(xí)引入了特有的新型不規(guī)則算子,即圖算子。隨著圖神經(jīng)網(wǎng)絡(luò)算法演進(jìn),圖神經(jīng)網(wǎng)絡(luò)所使用的圖算子的可變性和復(fù)雜性不斷增加,其計(jì)算也變得更加復(fù)雜。同時(shí),具有差異化的分布特點(diǎn)的圖數(shù)據(jù)作為輸入也給圖神經(jīng)網(wǎng)絡(luò)的計(jì)算帶來了特有的復(fù)雜性。現(xiàn)有的圖神經(jīng)網(wǎng)絡(luò)框架依靠手寫靜態(tài)算子來實(shí)現(xiàn)圖算子的計(jì)算操作,難以在變化的圖神經(jīng)網(wǎng)絡(luò)模型或輸入圖數(shù)據(jù)上維持較好的性能結(jié)果。
針對(duì)這一問題,uGrapher提出了一個(gè)統(tǒng)一的高性能接口,通過將所有圖算子抽象為一個(gè)統(tǒng)一的稀疏稠密混合循環(huán)的中間表達(dá)形式,解耦圖算子的計(jì)算和調(diào)度,并探索了對(duì)應(yīng)于GPU 上不同圖算子的不同循環(huán)變換所得到的不同的執(zhí)行策略之間的權(quán)衡關(guān)系,以針對(duì)不同圖神經(jīng)網(wǎng)絡(luò)算子和數(shù)據(jù)集的動(dòng)態(tài)變化的場景自適應(yīng)的提供高性能的計(jì)算支持。對(duì)比DGL[1], PyG[2], GNNAdvisor[3],uGrapher平均可以取得3.5倍的性能提升。
目前,阿里云正在將uGrapher的關(guān)鍵設(shè)計(jì)集成進(jìn)PAI自研的大規(guī)模圖神經(jīng)網(wǎng)絡(luò)框架GraphLearn中,從而為工業(yè)級(jí)別的圖神經(jīng)網(wǎng)絡(luò)應(yīng)用帶來性能加速。
● 論文標(biāo)題:
uGrapher: High-Performance Graph Operator Computation via Unified Abstraction for Graph Neural Networks
● 論文作者:
周楊杰,冷靜文,宋曜旭,盧淑文,王勉, 李超,過敏意, 沈雯婷,李永,林偉等
● 論文pdf鏈接:
https://dl.acm.org/doi/10.1145/3575693.3575723
● 參考文獻(xiàn):
[1] M. Wang, D. Zheng, Z. Ye, Q. Gan, M. Li, X. Song, J. Zhou, C. Ma, L. Yu, Y. Gai et al., “Deep graph library: A graph-centric, highly-performant package for graph neural networks,” arXiv preprint arXiv:1909.01315, 2019.
[2] M. Fey and J. E. Lenssen, “Fast graph representation learning with pytorch geometric,” arXiv preprint arXiv:1903.02428, 2019.
[3] Y. Wang, B. Feng, G. Li, S. Li, L. Deng, Y. Xie, and Y. Ding, “GNNAdvisor: An adaptive and efficient runtime system for GNN acceleration on GPUs,” in 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI 21), 2021, pp. 515–531.