---
id: pr-tilelang-2156
repo: tile-ai/tilelang
pr: 2156
title: '[Refactor][Backend] Split remaining TileOps by backend'
author: LeiWang1999
date: '2026-05-07'
url: https://github.com/tile-ai/tilelang/pull/2156
source_category: upstream-code
architectures:
- sm100
tags:
- fused-op
- gemm
techniques:
- kernel-fusion
hardware_features: []
kernel_types:
- gemm
languages: []
captured_at: '2026-05-16'
status: merged
merge_sha: 40acae4d195334a6e95710bfa9456b14aa31c86a
inclusion_reason: Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.
changed_paths:
- src/backend/cpu/op/copy.cc
- src/backend/cpu/op/fill.cc
- src/backend/cpu/op/transpose.cc
- src/backend/cuda/op/atomic_add.cc
- src/backend/cuda/op/atomic_reduce.cc
- src/backend/cuda/op/cumsum.cc
- src/backend/cuda/op/fill.cc
- src/backend/cuda/op/finalize_reducer.cc
- src/backend/cuda/op/gemm_sp.cc
- src/backend/cuda/op/reduce.cc
- src/backend/cuda/op/transpose.cc
- src/backend/metal/op/fill.cc
- src/backend/metal/op/transpose.cc
- src/backend/rocm/op/atomic_add.cc
- src/backend/rocm/op/atomic_reduce.cc
- src/backend/rocm/op/cumsum.cc
- src/backend/rocm/op/fill.cc
- src/backend/rocm/op/finalize_reducer.cc
- src/backend/rocm/op/reduce.cc
- src/backend/rocm/op/transpose.cc
- src/backend/webgpu/op/fill.cc
- src/backend/webgpu/op/transpose.cc
- src/op/atomic_add.cc
- src/op/atomic_add.h
- src/op/atomic_reduce.cc
- src/op/atomic_reduce.h
- src/op/fill.cc
- src/op/fill.h
- src/op/finalize_reducer.cc
- src/op/finalize_reducer.h
- src/op/gemm_sp.cc
- src/op/gemm_sp.h
- src/op/gemm_sp_py.cc
- src/op/gemm_sp_py.h
- src/op/reduce.cc
- src/op/reduce.h
- src/op/transpose.cc
- src/op/transpose.h
- tilelang/backend/__init__.py
- tilelang/backend/cuda/__init__.py
- tilelang/backend/cuda/gemm_sp.py
- tilelang/backend/gemm_sp.py
- tilelang/tileop/gemm_sp/__init__.py
artifact_dir: evidence/pull-bundles/tilelang/gh-2156
head_ref_oid: 12c4cc90a4027f9d4543216f4953d4faf37f54e9
---
# [Refactor][Backend] Split remaining TileOps by backend

- Repository: `tile-ai/tilelang`
- PR: [2156](https://github.com/tile-ai/tilelang/pull/2156)
- Decision: `Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.`
- Reason: Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.

## Changed Paths

- `src/backend/cpu/op/copy.cc`
- `src/backend/cpu/op/fill.cc`
- `src/backend/cpu/op/transpose.cc`
- `src/backend/cuda/op/atomic_add.cc`
- `src/backend/cuda/op/atomic_reduce.cc`
- `src/backend/cuda/op/cumsum.cc`
- `src/backend/cuda/op/fill.cc`
- `src/backend/cuda/op/finalize_reducer.cc`
- `src/backend/cuda/op/gemm_sp.cc`
- `src/backend/cuda/op/reduce.cc`
- `src/backend/cuda/op/transpose.cc`
- `src/backend/metal/op/fill.cc`
- `src/backend/metal/op/transpose.cc`
- `src/backend/rocm/op/atomic_add.cc`
- `src/backend/rocm/op/atomic_reduce.cc`
- `src/backend/rocm/op/cumsum.cc`
- `src/backend/rocm/op/fill.cc`
- `src/backend/rocm/op/finalize_reducer.cc`
- `src/backend/rocm/op/reduce.cc`
- `src/backend/rocm/op/transpose.cc`
- `src/backend/webgpu/op/fill.cc`
- `src/backend/webgpu/op/transpose.cc`
- `src/op/atomic_add.cc`
- `src/op/atomic_add.h`
- `src/op/atomic_reduce.cc`
- `src/op/atomic_reduce.h`
- `src/op/fill.cc`
- `src/op/fill.h`
- `src/op/finalize_reducer.cc`
- `src/op/finalize_reducer.h`
- `src/op/gemm_sp.cc`
- `src/op/gemm_sp.h`
- `src/op/gemm_sp_py.cc`
- `src/op/gemm_sp_py.h`
- `src/op/reduce.cc`
- `src/op/reduce.h`
- `src/op/transpose.cc`
- `src/op/transpose.h`
- `tilelang/backend/__init__.py`
- `tilelang/backend/cuda/__init__.py`
- `tilelang/backend/cuda/gemm_sp.py`
- `tilelang/backend/gemm_sp.py`
- `tilelang/tileop/gemm_sp/__init__.py`

## Evidence Bundle

`evidence/pull-bundles/tilelang/gh-2156`
