mcpField
P
python-performance-optimization

python-performance-optimization

github.com/jurgendn开发1138 次安装6 周前更新
代码仓库

关于 python-performance-optimization

面向 Python 开发者的性能优化技能,帮助定位并改善经过测量的瓶颈。流程强调先分析性能、验证正确性,并记录优化前后的结果。

主要功能

  1. 01收集工作负载与目标指标
  2. 02按瓶颈类型选择分析工具
  3. 03提供优化思路
  4. 04要求检查正确性并重新测量
  5. 05提供结果记录模板

适用场景

  1. 01排查运行缓慢的 Python 工作负载
  2. 02选择 CPU 或内存分析工具
  3. 03针对已测瓶颈规划改动
  4. 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;
  • 当前测量值和期望目标;
  • 环境和硬件;
  • 正确性测试或标准输出。

性能分析顺序

  1. 使用真实输入复现缓慢路径。
  2. 添加简单的墙钟时间测量。
  3. 使用合适的分析工具:
    • 使用 cProfile / py-spy 分析 CPU;
    • 使用 line_profiler 定位行级热点;
    • 使用 memory_profiler / tracemalloc 分析内存;
    • 使用应用程序指标衡量生产环境延迟。
  4. 找出值得改动的最小热点路径。
  5. 优化一个瓶颈。
  6. 重新测量并验证正确性。

常见优化类型

  • 改进算法或数据结构。
  • 通过缓存避免重复工作。
  • 对 I/O 或数据库调用进行批处理。
  • 使用生成器/流式处理来节省内存。
  • 适当时使用 NumPy/Pandas/JAX/PyTorch 对数值计算进行向量化。
  • 将真正受 CPU 限制的并行任务交给多进程/原生库处理。

规则

  • 未进行基线测量前不要优化。
  • 不要在不说明的情况下牺牲正确性来换取速度。
  • 不要优化冷代码。
  • 优先选择算法层面的提升,而不是微优化。
  • 记录优化前后的数据和输入规模。

输出

返回:

  • 性能目标;
  • 测量方法;
  • 瓶颈证据;
  • 按预期影响排序的优化计划;
  • 正确性保障;
  • 优化前后报告模板。

评论

支持 Markdown