بنقرة واحدة
op-task-extractor
从用户提供的代码或自然语言描述,构建标准化的单文件自包含任务代码。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
从用户提供的代码或自然语言描述,构建标准化的单文件自包含任务代码。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
矩阵乘法矩阵乘法 A[M, K] @ B[K, N] = C[M, N]中,大K维度矩阵乘法(K>>M,N)优化:针对M/N较小但K极大(如M=N=256,K=131072)的场景,Split-K切分K维度并行化、Workspace+Reduce替代全局同步,实现显著性能提升
Triton Ascend hard API restrictions and forbidden syntax. MUST-follow rules that apply to every kernel: forbidden control flow (return/break/continue/lambda/while), tensor slice/index restrictions, scalar conversion rules, BLOCK_SIZE upper bound. Violating any of these produces a compile or runtime error on Ascend.
Triton Ascend 性能优化通用策略: BLOCK_SIZE 选择 (1024-2048 for elementwise, must be <65536), grid configuration (use VEC_CORE_NUM / CUBE_CORE_NUM, 2D/3D grid for matmul / conv / reduce, 1D grid + inner loop for elementwise / pointwise), 256B alignment for memory transfers, autotune block-size patterns, fp16 / fp32 precision conversion. Bind via keywords like matmul, elementwise, reduce, block_size, grid, autotune, alignment, fp16, fp32, tile, interleaved-loop, cube-core, vec-core.
通过 adaptive_search 或 evolve 搜索式 workflow 生成优化算子。 后台 silent mode 执行,轮询监控进度。
适用于归约(reduce)类算子和含归约子步骤的复合算子(如归一化)的优化指南。典型算子包括:sum, mean, max, min, prod, argmax, argmin, cumsum, cumprod, softmax, logsoftmax, layernorm, rmsnorm, groupnorm, instancenorm, batchnorm, l1norm, l2norm, frobeniusnorm, var, std, average_pooling, sum_pooling 等。特别重要:当归约维度不是最后一维(如 dim=1 归约 shape=[B,F,D1,D2]),需要正确处理多维索引和两阶段归约。包含 PyTorch normalized_shape 多轴归一化语义说明。不适用于纯逐元素运算或矩阵乘法。如果算子是损失函数(先逐元素计算再全局归约),应选择 elementwise-reduce-fused 指南。
CPU C++ 算子核心概念、标准结构模式、KernelBench 代码规范和内嵌扩展方法
| name | op-task-extractor |
| description | 从用户提供的代码或自然语言描述,构建标准化的单文件自包含任务代码。 |
| argument-hint | 需要提供:1) 用户代码文件路径或自然语言描述;2) 可选:shape/dtype 信息来源文件路径 |
将用户的输入(代码文件或自然语言描述)转化为标准格式的 {op_name}.py 任务文件,并通过验证脚本确认可执行。
需要为后续算子生成工作流准备标准化任务文件时
Step 1 判断输入类型
├─ 用户提供了符合格式要求的代码文件 → 保存为 {op_name}.py → Step 4(验证)
│ ├─ 通过 → 返回(任务结束)
│ └─ 失败 → Step 2(分析并重写)
└─ 用户提供自然语言描述 → Step 2
Step 2 代码分析 & 依赖追踪
Step 3 构建 {op_name}.py(参考末尾「输出格式」)
Step 4 运行验证脚本(必须执行)
Step 5 用户确认
{op_name}.py,跳到 Step 4 运行验证脚本framework, backend, arch 配置按末尾「输出格式」生成文件,用 PyTorch/Python 实现:
Model.forward() 中Model.__init__()get_inputs() 和 get_init_inputs()使用命令模板执行 @scripts/validate_kernelbench_task.py:
python <本skill绝对路径>/scripts/validate_kernelbench_task.py \
/abs/path/{op_name}.py --json
验证脚本同时执行静态检查(4 个组件齐全)和运行时检查(实例化、前向传播、NaN/Inf、一致性)。
结果处理:
[VALID] + 来源是 Step 1 的用户原始文件 → 直接返回,任务结束[VALID] + 来源是 Step 3 新生成的文件 → 进入 Step 5[INVALID] → 根据错误信息修复代码,重新验证(最多 2 次)任务描述文件内容非用户提供的原始代码时,必须执行
将完整的 {op_name}.py 内容展示给用户,使用 question 工具请求确认。
不通过则结合用户反馈返回 Step 3。
| 约束 | 说明 |
|---|---|
| 自包含 | 所有依赖函数必须内联,禁止 import 项目内模块 |
| 可执行 | Model(*get_init_inputs()).forward(*get_inputs()) 必须直接运行 |
| 确定性 | 给定相同输入,输出必须一致 |
| 无 NaN/Inf | forward 输出不能包含 NaN 或 Inf |
| 禁止重写 | 原始函数可运行就直接复用,一行都不改 |
| 返回一致 | 返回类型/形状必须与原始实现一致 |
| 合理输入 | get_inputs 应提供合理大小的输入(不能过小或过大) |
最终文件必须是单一自包含 Python 文件,包含以下 4 个部分:
# 1. Imports 区(只允许标准库和 PyTorch 相关包)
import torch
import torch.nn as nn
# 2. Model 类
class Model(nn.Module):
def __init__(self, <init_params>):
super(Model, self).__init__()
def forward(self, <forward_inputs>) -> torch.Tensor:
return output
# 3. get_inputs():返回 forward() 的输入参数列表
def get_inputs():
input1 = torch.randn(batch_size, dim)
input2 = torch.randn(batch_size, dim)
return [input1, input2]
# 4. get_init_inputs():返回 __init__() 的初始化参数列表
def get_init_inputs():
return [dim_value]