tilelang-programming-model-guide

tilelang-programming-model-guide is a skill for Claude Code, Codex from tile-ai/tilelang-ascend. It costs 59 tokens per session (2,995 once invoked), scanned A, original, MIT.

A guide to choosing between TileLang Ascend’s Developer and Expert programming modes and setting their pass configurations, which control compiler processing steps.

In plain words
What is it for?
Use it when starting or changing a TileLang Ascend operator, configuring pass settings, or deciding how memory, computation, synchronization, and Cube/Vector work should be handled.
Why use it?
It removes guesswork when deciding how much control to give the compiler, especially when switching modes or mixing them. It also points to the appropriate mode for portability versus low-level performance control.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/tile-ai/tilelang-ascend/tilelang-programming-model-guide
Any agent
npx skills add tile-ai/tilelang-ascend --skill tilelang-programming-model-guide
Clone the repo
git clone --depth 1 https://github.com/tile-ai/tilelang-ascend

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for tilelang-programming-model-guide

README.md
[![agentmods](https://agentmods.dev/badge/skills/tile-ai/tilelang-ascend/tilelang-programming-model-guide.svg)](https://agentmods.dev/skills/tile-ai/tilelang-ascend/tilelang-programming-model-guide)
Your own site
<a href="https://agentmods.dev/skills/tile-ai/tilelang-ascend/tilelang-programming-model-guide"><img src="https://agentmods.dev/badge/skills/tile-ai/tilelang-ascend/tilelang-programming-model-guide.svg" alt="Measured on agentmods" height="20"></a>
Per session 59 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,995 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00059 $0.02995
Opus 5 $0.00030 $0.01497
Sonnet 5 $0.00012 $0.00599
Haiku 4.5 $0.00006 $0.00299

Measured 4d ago against content hash c7ae1a730294, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

tilelang-programming-model-guide scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.agents/skills/tilelang-custom-skill/tilelang-programming-model-guide/SKILL.md · 186 lines

How it starts

The opening of the file, as written. The whole thing — 186 lines — stays where its author put it; the contents beside it link to each section on GitHub.

TileLang Ascend 编程模式与 pass_configs 指南

API 用法详情(内存分配、计算原语、同步原语等)请参考 tilelang-api-best-practices skill,本文档不再重复。


1. 模式对比

维度 Developer 模式 Expert 模式
内存分配 T.alloc_shared / T.alloc_fragment T.alloc_L1 / T.alloc_ub / T.alloc_L0A/L0B/L0C
计算表达 T.Parallel + 符号运算 T.tile.xxx 扩展原语
作用域 编译器自动分离 Cube/Vector 手动 with T.Scope("C"/"V")
同步 编译器自动插入 手动 T.barrier_all / T.set_flag / T.wait_flag
CV 交互 默认消除 workspace+vid(threads=2 + 片上直连,见 §3.1.1) 显式 GM workspace + 手动 vid 二分
pass_configs 全部开启 全部关闭或不设
适用场景 大多数算子,跨平台兼容 极致性能优化,需要底层控制
示例目录 examples/developer_mode/ examples/flash_attention/fa_opt/flash_attn_bhsd_expert_*.py

混合模式:Developer 主体 + 少量 Expert / Ascend 专属 T.tile.xxx。使用 Developer 的 pass_configs,不写 T.Scope 和手动同步。大多数实际算子使用混合模式。


2. pass_configs 详解(核心)

2.1 四个 Ascend 专用开关

import tilelang

pass_configs = {
    tilelang.PassConfigKey.TL_ASCEND_AUTO_SYNC: True,        # ① 自动核内同步
    tilelang.PassConfigKey.TL_ASCEND_MEMORY_PLANNING: True,   # ② 自动内存规划
    tilelang.PassConfigKey.TL_ASCEND_AUTO_CV_COMBINE: True,   # ③ 自动CV分离
    tilelang.PassConfigKey.TL_ASCEND_AUTO_CV_SYNC: True,      # ④ 自动核间同步
}
① TL_ASCEND_AUTO_SYNC(自动核内同步)
  • 底层 key"tl.ascend_auto_sync",默认 False
  • 功能:自动在数据搬运和计算之间插入 T.barrier_all() 等同步指令
  • 开启时:无需手写 T.barrier_all()T.set_flag/T.wait_flag
  • 关闭时:必须手动插入所有同步点
② TL_ASCEND_MEMORY_PLANNING(自动内存规划)
  • 底层 key"tl.ascend_memory_planning",默认 False
  • 功能:自动分析 buffer 生命周期,实现片上内存复用
  • 开启时:自动复用 buffer 空间,减少片上内存占用
  • 关闭时:需手动通过 T.annotate_address 规划内存地址
③ TL_ASCEND_AUTO_CV_COMBINE(自动 CV 分离)
  • 底层 key"tl.ascend_auto_cv_combine",默认 False
  • 功能:自动将 kernel 中的 Cube 操作和 Vector 操作分离到不同的执行核
  • 开启时:无需手写 with T.Scope("C") / with T.Scope("V"),编译器根据 buffer 类型和所用原语自动识别
  • 关闭时:必须手动用 T.Scope 标注每段代码的执行域

Read the full file on GitHub · 186 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 186 lines · 59 tokens per session scan A c7ae1a730294

Subscribe to this mod's changes

tilelang-programming-model-guide is a skill published in the GitHub repository tile-ai/tilelang-ascend (358 stars, last pushed 7d ago), licensed MIT. It adds 59 tokens to every session and 2,995 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.

obra/superpowers · 37 tokens

auto-perf-optimize

Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.

microsoft/vscode · 62 tokens

chat-perf

Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.

microsoft/vscode · 51 tokens

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

cpu-profile-analysis

Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…

microsoft/vscode · 71 tokens