TileLink: Generating Efficient Compute-Communication Overlapping Kernels using Tile-Centric Primitives

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Zheng, Size, Fang, Jin, Zheng, Xuegui, Hou, Qi, Bao, Wenlei, Zheng, Ningxin, Jiang, Ziheng, Wang, Dongyang, Ye, Jianxi, Lin, Haibin, Chang, Li-Wen, Liu, Xin
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866910902360473600
author Zheng, Size
Fang, Jin
Zheng, Xuegui
Hou, Qi
Bao, Wenlei
Zheng, Ningxin
Jiang, Ziheng
Wang, Dongyang
Ye, Jianxi
Lin, Haibin
Chang, Li-Wen
Liu, Xin
author_facet Zheng, Size
Fang, Jin
Zheng, Xuegui
Hou, Qi
Bao, Wenlei
Zheng, Ningxin
Jiang, Ziheng
Wang, Dongyang
Ye, Jianxi
Lin, Haibin
Chang, Li-Wen
Liu, Xin
contents Large deep learning models have achieved state-of-the-art performance in a wide range of tasks. These models often necessitate distributed systems for efficient training and inference. The fundamental building blocks for distributed model execution are intra-layer parallel operators. The most effective approach to enhancing the performance of intra-layer parallel operators involves overlapping computation with communication. The overlapping can be achieved through either operator decomposition or kernel fusion. While decomposing operators is straightforward to implement, it often results in suboptimal performance. On the other hand, fusing communication kernels with compute kernels demands significant expertise and is error-prone. In this paper, we propose TileLink to enable efficient compilation and generation of overlapped compute-communication kernels. TileLink is composed of frontend and backend. In the frontend, TileLink decouples the design space of communication and computation, linking these two parts via tile-centric primitives. In the backend, TileLink translates these primitives into low-level communication instructions, integrating the communication and computation components to achieve overlapped execution. In experiments, TileLink achieves from $1.17\times$ to $20.76\times$ speedup to non-overlapping baseline and achieves performance comparable to state-of-the-art overlapping libraries on GPUs.
format Preprint
id arxiv_https___arxiv_org_abs_2503_20313
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle TileLink: Generating Efficient Compute-Communication Overlapping Kernels using Tile-Centric Primitives
Zheng, Size
Fang, Jin
Zheng, Xuegui
Hou, Qi
Bao, Wenlei
Zheng, Ningxin
Jiang, Ziheng
Wang, Dongyang
Ye, Jianxi
Lin, Haibin
Chang, Li-Wen
Liu, Xin
Distributed, Parallel, and Cluster Computing
Large deep learning models have achieved state-of-the-art performance in a wide range of tasks. These models often necessitate distributed systems for efficient training and inference. The fundamental building blocks for distributed model execution are intra-layer parallel operators. The most effective approach to enhancing the performance of intra-layer parallel operators involves overlapping computation with communication. The overlapping can be achieved through either operator decomposition or kernel fusion. While decomposing operators is straightforward to implement, it often results in suboptimal performance. On the other hand, fusing communication kernels with compute kernels demands significant expertise and is error-prone. In this paper, we propose TileLink to enable efficient compilation and generation of overlapped compute-communication kernels. TileLink is composed of frontend and backend. In the frontend, TileLink decouples the design space of communication and computation, linking these two parts via tile-centric primitives. In the backend, TileLink translates these primitives into low-level communication instructions, integrating the communication and computation components to achieve overlapped execution. In experiments, TileLink achieves from $1.17\times$ to $20.76\times$ speedup to non-overlapping baseline and achieves performance comparable to state-of-the-art overlapping libraries on GPUs.
title TileLink: Generating Efficient Compute-Communication Overlapping Kernels using Tile-Centric Primitives
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2503.20313