REVIEW 3 cited by
FusionStitching: Boosting Memory Intensive Computations for Deep Learning Workloads
Not yet reviewed by Pith; the record is open.
This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.
SPECIMEN: schema-true, not a live event
T0 review · schema-true
One-sentence machine reading of the paper's core claim.
pith:XXXXXXXX · record.json · timestamp
read the original abstract
We show in this work that memory intensive computations can result in severe performance problems due to off-chip memory access and CPU-GPU context switch overheads in a wide range of deep learning models. For this problem, current just-in-time (JIT) kernel fusion and code generation techniques have limitations, such as rough fusion plan exploration strategies and limited code generation ability. We propose FusionStitching, a deep learning compiler capable of fusing memory intensive operators, with varied data dependencies and non-homogeneous parallelism, into large GPU kernels to reduce global memory access and context switch overhead automatically. FusionStitching widens the range of operation combinations that fusion can target beyond previous JIT works by introducing data reuse of intermediate values. It explores large fusion spaces to decide optimal fusion plans with considerations of memory access costs, kernel calls and resource usage constraints. FusionStitching tunes the optimal stitching scheme with a domain-specific cost model efficiently. Experimental results show that FusionStitching can reach up to 2.21x speedup compared to state-of-the-art, with 1.45x on average. Besides these experimental results, we integrated our approach into a compiler product and deployed it onto a production cluster for AI workloads with thousands of GPUs. The system has been in operation for more than 4 months and saves 7,000 GPU hours on average for approximately 30,000 tasks per month.
Forward citations
Cited by 3 Pith papers
-
ComFuse: Fusing Complex Memory-Intensive Subgraphs with Compute-Intensive Kernels For Modern GPU Architectures
ComFuse fuses MatMul kernels with complex elementwise-reduction subgraphs, including back-to-back GEMMs, using thread block clusters and a staged pipeline, and reports up to 1.24x end-to-end speedup over TorchInductor.
-
MCFuser: High-Performance and Rapid Fusion of Memory-Bound Compute-Intensive Operators
MCFuser generates fused GPU kernels for memory-bound compute-intensive operator chains using tiling-expression search, DAG-based memory-access optimization, and an analytical performance model, beating Ansor by up to 5.9x.
-
Pearl: Automatic Code Optimization Using Deep Reinforcement Learning
An RL agent with a graph neural network learns loop nest optimizations for the Tiramisu compiler and generalizes to unseen benchmarks, reporting 2.02x and 3.36x geometric mean speedups over Tiramisu and Pluto.
Discussion (0). Sign in to comment.