首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于具有numpy/ cProfile ()cProfile结果的python

关于具有numpy/ cProfile ()cProfile结果的python
EN

Stack Overflow用户
提问于 2012-06-21 03:10:59
回答 1查看 472关注 0票数 4

可能重复:

How can you profile a Python script?

我已经使用cProfile来找出在我的python代码上花费了大部分时间的方法,下面是对“percall”进行排序之后的输出:

我发现len()花了我的大部分时间:

代码语言:javascript
复制
53515/533   330 930 0   940 00{len}

但是,我知道len()调用将调用python __len__()方法,我如何知道哪一个python类/对象花在我身上?

我使用python 2.6.5并使用以下方法运行我的脚本:

代码语言:javascript
复制
python -m cProfile myscript.py

实际上,我的代码将使用python-numpyscipy,并使用牛顿法进行数值优化。我相信计算目标函数的梯度花了我大部分时间,我想找出为什么花这么多钱。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-21 13:10:34

cProfile为每个函数提供两次时间:该函数(包括子调用)内的总时间和该函数(不包括子调用)内的总时间。为了检测瓶颈,你通常会根据这两个指标考虑最大的成本。

在您的例子中,我经常查找调用len的函数,并查看是否可以将值存储在某个地方,以避免不必要的调用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11131031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档