我正在研究为什么一个 Python 工具需要一秒钟以上才能开始运行,然后我了解了python -X importtime
功能,该功能在此处有记录。添加该选项会导致 Python 输出一个文本树,显示导入每个模块所花费的时间。
我尝试过这样:
python -X importtime -m llm plugins
这是LLM运行 41 个不同插件时的结果。以下是该命令的完整输出,其开头如下:
import time: self [us] | cumulative | imported package import time: 77 | 77 | _io import time: 19 | 19 | marshal import time: 131 | 131 | posix import time: 363 | 590 | _frozen_importlib_external import time: 450 | 450 | time import time: 110 | 559 | zipimport import time: 64 | 64 | _codecs import time: 252 | 315 | codecs import time: 277 | 277 | encodings.aliases
Kevin Michel 构建了这个出色的工具,用于将这些轨迹可视化为树状图。它可以在浏览器中运行 – 访问kmichel.github.io/python-importtime-graph/并粘贴轨迹即可获得可视化效果。
以下是我对 LLM 示例跟踪的描述:
可以看到,内容非常丰富!这是SVG 版本,可读性更强,因为你可以放大查看各个部分。
放大后看起来像这样:
原文: https://simonwillison.net/2025/Jun/20/python-importtime-graph/#atom-everything