用于多个输入和平均结果的 Python 配置文件

标签 python python-2.7 profiling cprofile

我有几个不同的 Python 脚本输入,我以以下形式调用它们:

./myscript.py myfile1
./myscript.py myfile2
./myscript.py myfile3
...

我可以使用 python -m cProfile -s ./myscript.py myfile1 对任何一个输入文件的每个函数的代码进行分析。不幸的是,根据输入文件的不同,时间花在代码的完全不同部分。

我对所有输入的代码进行分析的粗略想法是(1)快速而肮脏,编写一个 bash 脚本来调用 python -m cProfile -s ./myscript.py myfile对于每个 myfile ,并解析输出或 (2) 在 python 本身内解析 cProfile 结果。

我如何配置myscript.py对于我的所有输入文件,并对结果进行平均,这样我就知道热点一般在哪里?

最佳答案

这是很久以前的事了,但我最终采取的解决方案是使用 python cProfile、awk、grep 和 bash 的组合来编写快速且非常脏的脚本。第一个(主)脚本对文件进行索引并调用其他脚本,第二个脚本在(一个)输入文件上运行 python cProfile 并格式化输出以便于解析,第三个脚本组合结果。

关于用于多个输入和平均结果的 Python 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24895195/

相关文章:

python - 如何使用 Numba 加速 python 的字典

Python 对象创建

python - Django 上的模板

python - 如何将列表中的项目设置为特定变量?

c - 解释 gprof 结果和粒度

optimization - 参数传递样式的 Haskell 堆问题

linux - Systemtap 对性能的影响

Python 警告配置不起作用

python - 嵌套列表上某些元素的列表理解

python - 在python中转置数据