tilelang-cuda-memory

Optimize GPU memory access patterns in TileLang CUDA kernels.

6|1|Updated Apr 19, 2026
One-click install
npx skills add https://github.com/xchang1121/AutoResearch-CC-hook --skill tilelang-cuda-memory
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tilelang-cuda-memory
Source: https://github.com/xchang1121/AutoResearch-CC-hook/tree/main/skills/tilelang-cuda/guides/tilelang-cuda-memory
Command: npx skills add https://github.com/xchang1121/AutoResearch-CC-hook --skill tilelang-cuda-memory

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

GPU memory access is a key bottleneck in high-performance TileLang CUDA kernels. This guide provides memory-access optimization strategies to maximize throughput and minimize latency by leveraging shared memory, registers, and caching tricks.

Core Features & Use Cases

  • Memory hierarchy aware optimizations: tactics for shared memory tiling, register fragments, local storage, and L2/swizzle-based cache tuning.
  • Coalesced data transfers: using T.copy and tiled layouts to improve bandwidth efficiency in GEMM-like workloads.
  • Use Case: accelerate a memory-bound kernel such as matrix multiplication by reusing data in fast memory levels and reducing global memory traffic.

Quick Start

Run the TileLang CUDA memory-optimized kernel example to verify improved bandwidth and reduced latency.

Frequently Asked Questions about tilelang-cuda-memory

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I optimize shared memory and reduce bank conflicts in CUDA kernels?

To optimize shared memory and reduce bank conflicts in CUDA kernels, apply TileLang primitives like T.alloc_shared and T.use_swizzle to restructure memory access patterns for maximum throughput.

What is the best way to improve coalesced data transfers for memory-bound GPU workloads?

Improving coalesced data transfers for memory-bound GPU workloads involves using T.copy and tiled layouts to maximize bandwidth efficiency and minimize latency in GEMM-like operations.

How do I use register fragments to accelerate matrix multiplication in TileLang?

Use register fragments to accelerate matrix multiplication in TileLang by allocating local storage with T.alloc_fragment, which reuses data in fast memory levels and reduces global memory traffic.

Does TileLang support L2 cache tuning and swizzle-based optimizations for CUDA memory access?

Yes, TileLang supports L2 cache tuning and swizzle-based optimizations for CUDA memory access by leveraging T.use_swizzle and related cache tuning tactics to maximize bandwidth efficiency.

When should I use explicit memory hierarchy optimization for GPU kernels?

You should use explicit memory hierarchy optimization for GPU kernels when dealing with memory-bound workloads where global memory traffic is the primary bottleneck and requires shared memory tiling or register fragments.