关于 python-performance-optimization
面向 Python 开发者的性能优化技能,帮助定位并改善经过测量的瓶颈。流程强调先分析性能、验证正确性,并记录优化前后的结果。
主要功能
- 01收集工作负载与目标指标
- 02按瓶颈类型选择分析工具
- 03提供优化思路
- 04要求检查正确性并重新测量
- 05提供结果记录模板
适用场景
- 01排查运行缓慢的 Python 工作负载
- 02选择 CPU 或内存分析工具
- 03针对已测瓶颈规划改动
- 04记录性能优化结果
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jurgendn/ agent-skills --skill python-performance-optimization安装后在 Claude Code 中输入/python-performance-optimization确认已加载。
附带文件references/advanced-patterns.md
详细介绍
Python 性能优化
先测量,再优化最关键的瓶颈。每次性能改动都应配备正确性测试。
有关 NumPy 向量化、缓存、内存管理、并行处理、异步 I/O、数据库优化和基准测试工具等高级模式,请阅读
references/advanced-patterns.md。
信息收集
收集以下信息:
- 工作负载和输入规模;
- 目标指标:延迟、吞吐量、内存、CPU、I/O;
- 当前测量值和期望目标;
- 环境和硬件;
- 正确性测试或标准输出。
性能分析顺序
- 使用真实输入复现缓慢路径。
- 添加简单的墙钟时间测量。
- 使用合适的分析工具:
- 使用
cProfile/py-spy分析 CPU; - 使用
line_profiler定位行级热点; - 使用
memory_profiler/tracemalloc分析内存; - 使用应用程序指标衡量生产环境延迟。
- 使用
- 找出值得改动的最小热点路径。
- 优化一个瓶颈。
- 重新测量并验证正确性。
常见优化类型
- 改进算法或数据结构。
- 通过缓存避免重复工作。
- 对 I/O 或数据库调用进行批处理。
- 使用生成器/流式处理来节省内存。
- 适当时使用 NumPy/Pandas/JAX/PyTorch 对数值计算进行向量化。
- 将真正受 CPU 限制的并行任务交给多进程/原生库处理。
规则
- 未进行基线测量前不要优化。
- 不要在不说明的情况下牺牲正确性来换取速度。
- 不要优化冷代码。
- 优先选择算法层面的提升,而不是微优化。
- 记录优化前后的数据和输入规模。
输出
返回:
- 性能目标;
- 测量方法;
- 瓶颈证据;
- 按预期影响排序的优化计划;
- 正确性保障;
- 优化前后报告模板。
评论
支持 Markdown