원클릭으로
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]