cuTile 到 Triton 内核转换助手
将 cuTile GPU 内核转换为可验证、可调优的 Triton 实现。
技能明确限定在 cuTile 到 Triton 转换,并要求测试和性能门禁;但授予 Bash、Write 等广泛工具权限,未要求逐次确认、最小权限、敏感数据处理、变更回滚或外部副作用隔离,因此扣分。
流程结构清晰,包含分析、转换、验证、测试、基准测试及失败后修复要求;但静态材料未证明关键路径可运行,且示例和依赖环境存在未验证假设,异常输入和可诊断失败信息覆盖有限,因此扣分。
目标用户、触发场景、TMA、布局标志、性能回退和调试场景描述较明确;但主要依赖 CUDA、cuTile、Triton 和 TileGym 测试环境,未说明非 CUDA 环境、版本边界或中文使用支持,因此扣分。
具备名称、版本、描述、许可证、作者、标签、分层参考文档、检查清单和多个示例;但缺少该技能自身的变更日志、明确维护责任与更新路径,且报告指出缺少推荐的 Examples 章节,因此扣分。
工作流、API 映射、TMA 规则、性能陷阱和完成门禁对转换任务具有直接帮助,示例提供可参考输出;但静态审查无法确认转换结果正确或性能达标,示例仍需环境验证和人工复核,因此扣分。
提供源代码示例、测试函数、基准函数和一份 NVSkills-Eval 报告;但报告缺少可独立核验的原始日志、CI 或覆盖关键路径的可复现实验,结论主要仍是声明,因此扣分。
- 该技能可执行 Bash 和写入文件,但未规定命令白名单、用户确认、备份或回滚;转换前应隔离工作树并人工审阅命令。
- TMA 必须性、性能回退倍数和示例正确性未由本次静态审查独立验证;不要将文档中的性能门槛视为已证明结果。
- 技能依赖 NVIDIA CUDA/cuTile/Triton 及 TileGym 测试环境,未说明在中国大陆网络或无 NVIDIA GPU 环境中的可用替代方案。
这个 Skill 能做什么,适合哪些场景?
该技能面向将 cuTile 的 @ct.kernel GPU 内核迁移到 Triton @triton.jit 的开发者。它提供分阶段的分析、转换、验证、测试和基准测试流程,并覆盖 API 映射、TMA 张量描述符、自动调优网格及双布局内核。它还指导排查非法地址、形状不匹配和数值不匹配等运行时问题。技能由 NVIDIA TileGym 团队维护,采用 CC BY 4.0 与 Apache 2.0 双许可。
读取 cuTile 源码并通过 grep 检查内核数量、加载存储操作、布局标志和其他特殊模式;根据内置参考文档将 ct.load、ct.store、ct.Constant、ct.launch、ct.mma 等模式映射到 Triton;创建或修改 Triton 内核及主机端启动代码;使用语法检查和 TileGym pytest 目标验证结果;运行性能测试并比较 Triton 与 cuTile 的表现;针对 CUDA 非法地址、形状、数据类型、步幅和数值问题提供调试路径。
- TileGym 开发者需要把现有的 cuTile 算子迁移到 Triton,并希望按阶段完成验证和性能确认。
- GPU 内核工程师遇到 cudaErrorIllegalAddress、形状不匹配或数值不匹配,需要根据 cuTile 到 Triton 的对应关系排查。
- 性能工程师转换 GEMM、BMM 或注意力内核后发现 Triton 变慢,需要检查 TMA、自动调优、网格布局和尾部处理。
- 开发者处理带 transpose、transpose_v 或 MLA 风格路径的内核,需要实现不同布局对应的独立 Triton 内核。
- 注意力或 Gemma FMHA/GQA 开发者需要在转换内层循环前执行专门的优化检查清单。
这个 Skill 有哪些优点和局限?
- 流程明确,要求在分析、转换、验证、测试和基准测试之间设置阶段门。
- 覆盖 cuTile 与 Triton 的常见 API 映射及运行时错误排查。
- 明确要求二维及以上块状访问优先使用 tl.make_tensor_descriptor,并关注严重性能回归。
- 针对双布局、自动调优、注意力和 Blackwell 优化提供专门参考路径。
- 技能本身不包含具体 CUDA、Triton、cuTile 或 TileGym 环境的安装说明。
- 必须依赖实际的 TileGym 测试和性能环境;源材料没有提供测试通过结果或平台覆盖证据。
- 转换流程较严格,简单迁移也需要执行清单、测试和基准测试等步骤。
- README 所述签名、评测数据和 BENCHMARK.md 是集合发布要求,但给定 SKILL.md 内容未展示这些文件。
如何安装这个 Skill?
使用 NVIDIA skills CLI 安装:
npx skills add nvidia/skills --skill tilegym-converting-cutile-to-triton --yes
也可以指定目标客户端,例如:
npx skills add nvidia/skills --skill tilegym-converting-cutile-to-triton --agent codex --yes
README 未说明该单个技能的独立源码仓库地址;技能随 NVIDIA/skills 集合安装。
如何使用这个 Skill?
安装后,在相关任务中明确提出转换或调试请求,例如:“将这个 @ct.kernel cuTile 内核转换为 Triton,并完成测试和性能基准。”技能要求先建立转换清单,再依次执行 analyze → convert → validate → test → benchmark。常用验证命令包括 pytest tests/ops/test_<op>.py -k "triton" -vs;具体文件路径、算子名称和环境配置需由使用者提供,源码未给出统一的安装或硬件配置步骤。
这个 Skill 与同类方案有什么区别?
相较于继续使用 cuTile,该技能适合需要 Triton 目标实现、Triton 启动方式或 Triton 性能调优的场景;它不是新的 GPU 内核框架,而是围绕 cuTile 到 Triton 迁移的工作流和参考文档。