Operator Fusion in XLA: Analysis and Evaluation

Daniel Snider, Ruofan Liang
1/30/2023
cs.LG

No confident code implementation found for this paper.

Abstract

Machine learning (ML) compilers are an active area of research because they offer the potential to automatically speedup tensor programs. Kernel fusion is often cited as an important optimization performed by ML compilers. However, there exists a knowledge gap about how XLA, the most common ML compiler, applies this nuanced optimization, what kind of speedup it can afford, and what low-level effects it has on hardware. Our paper aims to bridge this knowledge gap by studying key compiler passes of XLA's source code. Our evaluation on a reinforcement learning environment Cartpole shows how different fusion decisions in XLA are made in practice. Furthermore, we implement several XLA kernel fusion strategies that can achieve up to 10.56x speedup compared to our baseline implementation.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{snider2023operator,
  title  = {Operator Fusion in XLA: Analysis and Evaluation},
  author = {Daniel Snider and Ruofan Liang},
  year   = {2023},
  eprint = {2301.13062},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2301.13062v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2301.13062.svg)](https://codeofpaper.com/paper/2301.13062)

Discussion