針對(duì)GPU上的雙精度矩陣乘法(DGEMM)優(yōu)化,高性能計(jì)算部提出了一種平衡GPU硬件資源的細(xì)粒度預(yù)取方案,有效減少了幾類常用分塊方法的寄存器使用數(shù)量,提高了線程級(jí)并行。研究成果發(fā)表于國(guó)際會(huì)議International Parallel & Distributed Processing Symposium(IPDPS,CCF B類)上。相關(guān)論文第一作者為博士生李佳霖,導(dǎo)師為張鑒研究員。
通用矩陣乘法 (GEMM) 是科學(xué)和高性能計(jì)算的基本內(nèi)核之一。GEMM 的巨大計(jì)算成本和廣泛采用使其對(duì)高性能的優(yōu)化成為一項(xiàng)非常有益的任務(wù),而圖形處理單元(GPU)作為如今提供計(jì)算能力的主流硬件,在其上進(jìn)行 GEMM 優(yōu)化顯得尤為重要。在GPU 上優(yōu)化 GEMM 的性能,通常將矩陣依據(jù)存儲(chǔ)層次結(jié)構(gòu)進(jìn)行分塊來(lái)適應(yīng)線程層次結(jié)構(gòu)。在實(shí)踐中,線程級(jí)并行不僅受分塊方案的影響,還受每個(gè)分塊消耗的硬件資源的影響,例如寄存器和共享內(nèi)存。
基于上述問(wèn)題,研究人員提出了一種細(xì)粒度的預(yù)取方案(FGPS),通過(guò)平衡GPU硬件資源的使用來(lái)提高線程級(jí)并行性。并通過(guò)分析指令和線程級(jí)并行性的得失,構(gòu)造一個(gè)量化模型來(lái)估計(jì)FGPS的整體性能增益。此外,還將FGPS集成到自動(dòng)調(diào)優(yōu)的開(kāi)源工具 Tensile 中,以自動(dòng)生成匯編內(nèi)核代碼,以最大限度地提高 DGEMM 對(duì)一系列問(wèn)題大小的性能。實(shí)驗(yàn)表明,對(duì)于單個(gè)和批量矩陣-矩陣乘法,在各種矩陣大小上的性能加速約為 1.1倍。(撰稿:李佳霖)
相關(guān)成果:
Jialin Li, Huang Ye, Shaobo Tian, Xinyuan Li, Jian Zhang. A Fine-grained Prefetching Scheme for DGEMM Kernels on GPU with Auto-tuning Compatibility. IPDPS Conference, 2022.

圖1 常用兩級(jí)分塊方法

圖2 雙緩沖與FGPS