一键导入
shmem-ops-testcase-gen
为基于 SHMEM 的算子生成正确性测试计划、case matrix、golden/checker 和测试脚本。关键词:基于SHMEM测试用例、case matrix、golden、checker、gen_data、check_result。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
为基于 SHMEM 的算子生成正确性测试计划、case matrix、golden/checker 和测试脚本。关键词:基于SHMEM测试用例、case matrix、golden、checker、gen_data、check_result。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
根据 design.md 生成基于 SHMEM 的算子代码、CMake、README 和目录结构。关键词:基于SHMEM代码生成、算子实现、code-gen、kernel、CMake。
基于 SHMEM 的算子实现与设计一致性走读,生成 review-report.md。关键词:基于SHMEM代码走读、code review、design review、一致性检查、走读。
编译、运行和调试基于 SHMEM 的算子。关键词:基于SHMEM编译调试、compile、debug、build、运行、失败定位。
执行基于 SHMEM 的算子正确性契约验证并生成报告。关键词:基于SHMEM正确性验证、correctness、测试执行、精度验证。
基于 SHMEM 设计通信算子与通算融合算子,将需求转化为 design.md。关键词:基于SHMEM算子设计、算子设计、设计文档、design、Canonical DSL、capability mapping。
基于 SHMEM 的通信算子与通算融合算子端到端开发编排器,串联需求→设计→代码→编译→验证→性能全流程。关键词:基于SHMEM算子开发、端到端开发、算子开发、编排、工作流、通信算子、通算融合。
| name | shmem-ops-testcase-gen |
| description | 为基于 SHMEM 的算子生成正确性测试计划、case matrix、golden/checker 和测试脚本。关键词:基于SHMEM测试用例、case matrix、golden、checker、gen_data、check_result。 |
Skill类型:文档与脚本生成型(读取设计文档,输出测试计划和验证脚本)
中文写作要求:测试计划和 case matrix 文档必须使用中文撰写。仅 Case ID、代码片段、API 名称等技术术语保留英文原文。
将 design.md 中的 correctness contract 和 invariants 转化为可执行的测试计划、数据生成脚本和精度验证脚本。测试计划是实现约束,必须在代码生成前完成。
| 文件 | 用途 |
|---|---|
| references/correctness.md | 测试规则——golden 构造策略、case matrix 类别、invariant→test 映射 |
| references/precision-standard.md | 精度标准——OpTypes 分类、rtol/atol 取值表、双统计判定、双级兜底 |
| references/test-structure-template.md | 代码模板——gen_data.py / check_result.py / scripts/run.sh(含 timeout)/ main.cpp 边界规则 |
| references/testcase-scale-standard.md | 规模分档(XS/S/M/L)、边界条件、dtype 覆盖、case matrix 模板、最小 case 数 ≥ 20 |
| references/GUIDE.md | 本 skill 参考索引 |
| ../shmem-ops-dev/references/shmem-repo-resolution.md | 定位 SHMEM_REPO(对照仓内 examples 构造 golden 前) |
design.md 的 correctness 字段:oracle、rtol/atol、invariants、case_matrixdesign.md 的 interface 字段:inputs/outputs/dtype/shapedesign.md 的 semantics 字段:local_compute、communication、finalize步骤 1 提取 correctness contract
步骤 2 生成 case matrix
步骤 3 生成数据生成脚本 (gen_data.py)
步骤 4 生成精度验证脚本 (check_result.py)
步骤 5 生成运行脚本 (`scripts/run.sh`)
从 design.md 中提取:
必须按 references/testcase-scale-standard.md 的规模分档生成,覆盖 XS/S/M/L 四档 + 边界 + 压力,总 case 数 ≥ 20。类别要求详见 references/correctness.md §3。
职责:
np.random.seed(42)),确保可复现input_pe{rank}.bin)golden_pe{rank}.bin 或 golden.bin)Golden 构造方法:
职责:
meta.op_kind 和 dtype 选择 tolerance(不能一律使用 1e-5);op_kind → OpTypes 映射见 precision-standard.md §5.1Tolerance 选择规则详见 references/precision-standard.md。scripts/run.sh 调用 check_result.py 时必须显式传 --rtol 和 --atol,不依赖脚本内默认值。
scripts/run.sh按 test-structure-template.md §4 生成算子内 scripts/run.sh。
交付入口(custom-ops 默认):skill/README MUST 以 custom-ops-entrypoints.md §2 为首选运行入口,算子内 scripts/run.sh 为被转发实现。build 失败提示 MUST 为同文件 §1 编译。
多 PE 启动脚本,每个 PE 一个独立进程。
环境设置 MUST 内联 env-setup.snippet.md 中的 setup_shmem_runtime_env,或在模板中等价内联:先激活 SHMEM install 环境脚本,再追加 build/lib 和 ${ASCEND_HOME_PATH}/lib64。禁止只手动设 LD_LIBRARY_PATH=build/lib。
op_name/
├── scripts/
│ ├── gen_data.py
│ ├── check_result.py
│ ├── `scripts/run.sh`
│ └── run_case_matrix.py
└── data/ (gen_data.py 生成)
├── input_pe0.bin
├── input_pe1.bin
├── golden.bin
└── config.json
case matrix 执行报告输出到 docs/case_matrix_report.md。
scripts/run.sh 支持多 PE 启动scripts/run.sh 调用 setup_shmem_runtime_env(或等价完整 LD_LIBRARY_PATH 链)scripts/run.sh 通过 setup_shmem_dynamic_endpoints 避免固定 IPPORT/SHMEM_UID_SESSION_ID 冲突scripts/run.sh 只设 LD_LIBRARY_PATH=build/lib,不 source ${SHMEM_REPO}/install/set_env.sh`scripts/run.sh 写死 IPPORT=tcp://127.0.0.1:27010 等全局默认端口(与 Torch 测试或其它 run 并行时 shmem init 失败)result_compare.py / checker 的 dtype 与 golden 生成 dtype 不一致(如 int8 数据用 float16 读取)