SwizzlePerf: Hardware-Aware LLMs for GPU Kernel Performance Optimization

Arya Tschand, Muhammad Awad, Ryan Swann, Kesavan Ramakrishnan, Jeffrey Ma +3 more
8/27/2025
cs.DCcs.AI

No confident code implementation found for this paper.

Abstract

Large language models (LLMs) have shown progress in GPU kernel performance engineering using inefficient search-based methods that optimize around runtime. Any existing approach lacks a key characteristic that human performance engineers rely on for near-optimal utilization -- hardware-awareness. By leveraging the workload's specific memory access patterns, architecture specifications, filtered profiling logs, and reflections on historical performance, we can make software-level optimizations that are tailored to the underlying hardware. SwizzlePerf automatically generates spatial optimizations for GPU kernels on disaggregated architectures by giving LLMs explicit hardware-awareness. For a GEMM kernel, SwizzlePerf takes less than 5 minutes to generate the same hardware-specific optimal swizzling pattern that took expert performance engineers 2 weeks to find. On a suite of 10 diverse ML and Science kernels, SwizzlePerf can generate swizzling patterns for 9 of the kernels that achieve up to a 2.06x speedup and 70% improvement in L2 hit rate. This work is the first of many steps toward systematically creating hardware-aware LLM performance engineering agents.

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{tschand2025swizzleperf,
  title  = {SwizzlePerf: Hardware-Aware LLMs for GPU Kernel Performance Optimization},
  author = {Arya Tschand and Muhammad Awad and Ryan Swann and Kesavan Ramakrishnan and Jeffrey Ma and Keith Lowery and Ganesh Dasika and Vijay Janapa Reddi},
  year   = {2025},
  eprint = {2508.20258},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2508.20258v1}
}

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/2508.20258.svg)](https://codeofpaper.com/paper/2508.20258)

Discussion