docs: update scripts documentation Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
docs: update scripts documentation
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
基于 Claude Code 的自主 CUDA 算子优化系统。通过 /optimize 命令驱动迭代优化循环,将 PyTorch 参考实现逐步替换为高性能自定义内核。
/optimize
KernelForge/ ├── solution/ │ ├── model.py # PyTorch 基线参考(不可编辑) │ └── model_new.py # 优化目标(唯一可编辑文件) ├── scripts/ │ ├── env.sh # 运行环境配置(CUDA/MACA、Python 路径、torch.compile 对比开关) │ ├── run.sh # 入口脚本(加载 env.sh + 调用 run.py + 写入最新日志) │ ├── run.py # 测试运行器(正确性 / 性能 / profiling) │ └── src/ │ ├── __init__.py # Python 包标记 │ ├── benchmark.py # 正确性验证、性能测试、profiling 工具 │ ├── compile_guard.py # ModelNew 编译超时保护与缓存清理 │ ├── gpu_selector.py # 自动选择空闲 CUDA/MACA GPU │ └── path_bootstrap.py # 将 solution/ 加入 Python import 路径 ├── experiments/ # 实验记录(由 /log-experiment 创建) ├── CLAUDE.md # 项目指令(Claude Code 读取) └── .claude/ ├── commands/ # 斜杠命令定义 │ ├── optimize.md # /optimize — 主优化循环 │ ├── benchmark.md # /benchmark — 运行基准测试 │ └── log-experiment.md # /log-experiment — 记录实验 ├── settings.json # 权限与钩子配置 └── skills/ # 辅助技能(CUDA profiling、知识库等)
将 KernelBench 中的算子模板复制到 solution/ 目录:
solution/
model.py
model_new.py
bash scripts/run.sh correctness # 仅验证正确性 bash scripts/run.sh quick # 正确性 + 性能(100 次迭代) bash scripts/run.sh full # 正确性 + 性能(1000 次迭代)+ profiling
输出保存到 scripts/output/bench_latest.log,profiling 结果保存到 scripts/output/profile_latest.txt。
scripts/output/bench_latest.log
scripts/output/profile_latest.txt
在 Claude Code 中使用 /optimize 命令启动自主优化循环:
循环会自动执行:评估 → 规划 → 实现 → 验证 → 测量 → 记录 → 决策,持续迭代直到达到满意性能。
也可以手动进行优化:
solution/model_new.py
bash scripts/run.sh correctness
bash scripts/run.sh quick
/log-experiment
/benchmark <correctness|quick|full>
torch.utils.cpp_extension.load_inline
model.eval()
torch.no_grad()
/log-experiment 会在 experiments/ 下创建编号文件夹,包含:
experiments/
bench.log
profile.txt
result.md
实验汇总记录在 experiments/summary.md,跨实验洞察记录在 experiments/LESSONS.md。
experiments/summary.md
experiments/LESSONS.md
环境配置集中维护在 scripts/env.sh 中,包括 CUDA/MACA 路径、Python 解释器路径以及 COMPARE_TORCH_COMPILE 开关。scripts/run.sh 会在启动时加载该文件。
scripts/env.sh
COMPARE_TORCH_COMPILE
scripts/run.sh
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
KernelForge
基于 Claude Code 的自主 CUDA 算子优化系统。通过
/optimize命令驱动迭代优化循环,将 PyTorch 参考实现逐步替换为高性能自定义内核。项目结构
工作流
1. 准备算子
将 KernelBench 中的算子模板复制到
solution/目录:model.py— PyTorch 参考实现(基线,不可编辑)model_new.py— 优化目标(初始与 model.py 相同)2. 运行基准测试
输出保存到
scripts/output/bench_latest.log,profiling 结果保存到scripts/output/profile_latest.txt。3. 自主优化(推荐)
在 Claude Code 中使用
/optimize命令启动自主优化循环:循环会自动执行:评估 → 规划 → 实现 → 验证 → 测量 → 记录 → 决策,持续迭代直到达到满意性能。
4. 手动迭代
也可以手动进行优化:
solution/model_new.py,将 PyTorch 算子替换为自定义 CUDA 内核bash scripts/run.sh correctness验证正确性bash scripts/run.sh quick测量性能/log-experiment记录实验结果命令
/optimize/benchmark <correctness|quick|full>/log-experiment优化规则
model_new.py**,model.py是语义锚点torch.utils.cpp_extension.load_inline)或 Tritonmodel.eval()+torch.no_grad())实验记录
/log-experiment会在experiments/下创建编号文件夹,包含:model_new.py— 该次实验的代码快照bench.log— 基准测试日志profile.txt— profiling 结果(如有)result.md— 实验描述、结果、经验总结实验汇总记录在
experiments/summary.md,跨实验洞察记录在experiments/LESSONS.md。环境要求
环境配置集中维护在
scripts/env.sh中,包括 CUDA/MACA 路径、Python 解释器路径以及COMPARE_TORCH_COMPILE开关。scripts/run.sh会在启动时加载该文件。