首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python kernprof line profiler错误结果

Python kernprof line profiler错误结果
EN

Stack Overflow用户
提问于 2021-05-09 17:14:38
回答 1查看 66关注 0票数 0

我有两个要分析的函数。如果我运行kernprof,它表明我的第一个函数在75秒内运行,而第二个函数在15秒内运行python-cythonized。

我已经尝试过使用python中的time模块,并且自己测量了一下,我发现第一个函数的时间是12秒,第二个函数的时间是9秒。

为什么会这样呢?

EN

回答 1

Stack Overflow用户

发布于 2021-05-20 00:55:59

我们检查了一大堆分析器,发现对于我们用于测试的基准测试(来自Pyperformance套件),当执行纯kernprof代码时,使用Python会导致大约7倍的速度减慢。这与您观察到的执行时间扩展(6.25倍)非常接近,所以我相信这几乎可以肯定是原因。

如果您想要使用开销较少(几乎为零)且更准确的分析器,有几个选择。我个人推荐Scalene,这是一个同时分析CPU、GPU和内存的分析器,所有这些都具有非常低的开销,并且不需要修改您的代码(即不需要添加@profile装饰器)。完全公开:我是Scalene的主要作者之一。

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

https://stackoverflow.com/questions/67460474

复制
相关文章
python 基准测试(cProfile \ kcachegrind \ line_profiler \ memory_profiler)
该包可以了解代码是如何转换为字节码的, dis 表示 disassemble 反汇编
Michael阿明
2022/09/21
1.4K0
python 基准测试(cProfile \ kcachegrind \ line_profiler \ memory_profiler)
Python 性能分析
Python性能分析与优化 一个优秀的程序员,在保证业务正常的条件下都会追求自己的程序更快、更省。更快:运行时间短;更省:相对节省计算机资源(比如:CPU、Memory)。一般都是以这两种衡量方式来度量自己的程序及进一步优化自己程序的空间。更专业的性能分析软件一般有两类方法论:event-based profiling和statistical profiling 。 Event-based Profiling 并不是所有编程语言都支持这类性能分析,支持这类分析的语言主要有: Java:JVMTI(JVM
吕海峰
2018/04/03
1.4K0
Python性能分析指南
虽然你所写的每个Python程序并不总是需要严密的性能分析,但是当这样的问题出现时,如果能知道Python生态系统中的许多种工具,这样总是可以让人安心的。 分析一个程序的性能可以归结为回答4个基本的问
CDA数据分析师
2018/02/05
9370
Python性能分析指南
使用line_profiler对python代码性能进行评估优化
在做完一个python项目之后,我们经常要考虑对软件的性能进行优化。那么我们需要一个软件优化的思路,首先我们需要明确软件本身代码以及函数的瓶颈,最理想的情况就是有这样一个工具,能够将一个目标函数的代码每一行的性能都评估出来,这样我们可以针对所有代码中性能最差的那一部分,来进行针对性的优化。开源库line_profiler就做了一个这样的工作,开源地址:github.com/rkern/line_profiler。下面让我们一起看下该工具的安装和使用详情。
DechinPhy
2021/05/21
2.6K0
对比 PL/SQL profiler 剖析结果
      使用PL/SQL PROFILER 剖析PL/SQL代码是快速定位PL/SQL代码段最有效的方法。在上一篇文章使用PL/SQL PROFILER 定位 PL/SQL 瓶颈代码中描述了安装PROFILER,并给出了剖析的示例。本文参照了Tom大师的代码来对比剖析前后的性能并附上其代码。
Leshami
2018/08/13
5830
使用line_profiler查看api接口函数每行代码执行时间
项目情景描述:   在restful架构风格的项目交付测试的过程中,某接口出现 请求超时导致的http 502 Bad Gateway,于是开始排查具体是接口函数中的哪行代码或函数 响应时间过长导致的502错误。 刚开始的解决方法:   土鳖式的导入 time模块进行时间计算,从而查出具体响应时间过长的位置   如下: 1 import time import time 2 from flask import Flask 3 app = Flask(__name__) 4 5 app.route
用户1558882
2018/04/03
2.1K0
时间都去哪儿了--python性能优化
当自动化测试的量特别大的时候,python性能就显得尤为重要。 往往高手和菜鸟的区别在性能上体现出来了。
赵云龙龙
2020/10/09
7600
python 代码检查,实现行级代码优化
    有时候运行一个python程序,它需要运行很长时间。你或许想提升该程序的运行效率。那该怎么做那?
py3study
2020/01/09
6290
Stack overflow at line  错误原因
<a href=”javascript:showModalDialog();”></a>
全栈程序员站长
2022/09/14
7250
NumPy 秘籍中文第二版:七、性能分析和调试
调试是从软件中查找和删除错误的行为。 分析是指构建程序的概要文件,以便收集有关内存使用或时间复杂度的信息。 分析和调试是开发人员生活中必不可少的活动。 对于复杂的软件尤其如此。 好消息是,许多工具可以为您提供帮助。 我们将回顾 NumPy 用户中流行的技术。
ApacheCN_飞龙
2023/04/17
1K0
NumPy 秘籍中文第二版:七、性能分析和调试
stack overflow at line 错误原因及解决
错误表现: 按关闭窗口按钮时,弹出对话框:stack overflow at line 87 . 那个按键的onclick = “window.close()”
全栈程序员站长
2022/09/14
5170
使用cProfile等工具来提高python的执行速度
摘要: 众所周知,python相较于其它语言速度较慢,但是我们可以通过优化的方法来提升效率。 本文假定你已经十分熟悉Python。 众所周知,Python是一种解释性的语言,执行速度相比C、C++等语言十分缓慢;因此我们需要在其它地方上下功夫来提高代码的执行速度。 首先需要对代码进行分析。 代码分析 傻乎乎地一遍又一遍地检查代码并不会对分析代码的执行时间有多大帮助,你需要借助一些工具。 先看下面这段程序: """Sorting a large, randomly generated string and
小莹莹
2018/04/23
1.5K0
使用cProfile等工具来提高python的执行速度
日拱一卒,麻省理工教你性能分析,火焰图、系统调用栈,黑科技满满
今天我们继续麻省理工missing smester,消失的学期的学习。这一次我们继续上一节课的内容,来看看性能分析的部分。
TechFlow-承志
2022/09/21
6450
日拱一卒,麻省理工教你性能分析,火焰图、系统调用栈,黑科技满满
代码优化指南:人生苦短,我用Python
选自pythonfiles 机器之心编译 参与:Panda 前段时间,Python Files 博客发布了几篇主题为「Hunting Performance in Python Code」的系列文章,对提升 Python 代码的性能的方法进行了介绍。在其中的每一篇文章中,作者都会介绍几种可用于 Python 代码的工具和分析器,以及它们可以如何帮助你更好地在前端(Python 脚本)和/或后端(Python 解释器)中找到瓶颈。机器之心对这个系列文章进行了整理编辑,将其融合成了这一篇深度长文。本文的相关代码
机器之心
2018/05/09
1.1K0
代码优化指南:人生苦短,我用Python
代码优化指南:人生苦短,我用Python
代码地址:https://github.com/apatrascu/hunting-python-performance
昱良
2020/01/16
1K0
代码优化指南:人生苦短,我用Python
tf.profiler
将_cached_byte_size_dirty位设置为true,并将其传播给侦听器(如果这是状态更改)。
狼啸风云
2019/09/06
4.4K0
Python开发中如何优雅地区分错误和正确的返回结果
Python提供了强大的异常处理机制。通过这种方式,我们可以明确地分离错误和正常返回:
运维开发王义杰
2023/09/19
3430
Python开发中如何优雅地区分错误和正确的返回结果
subprocess实时获取结果和捕获错误
需要调用命令行来执行某些命令,主要是用 subprocess 实时获取结果和捕获错误,发现subprocess的很多坑。
机器学习和大数据挖掘
2019/07/01
6.3K2
IE中出现 “Stack overflow at line” 错误的解决方法
在做网站时遇到一个问题,网站用的以前的程序,在没有改过什么程序的情况下,页面总是提示Stack overflow at line 0的错误,而以前的网站都正常没有出现过这种情况,在网上找了一下解决办法如下:我的程序出现这种错误的原因是第2种,我在图片中使用了onerror事件,当图片加载出问题时就是显示一个默认图片,然而在我的网站目录中并不存在这张默认图片,而源指定的图片也不存在,所以会触发onerror事件,由于两个图片都不存在,所以导致了一个死循环,导致内存溢出。
全栈程序员站长
2022/09/08
5480
IE中出现 "Stack overflow at line" 错误的解决方法
onclick / onsubmit … 都是系统保留的事件名称,不允许作为重定义函数名称。
零式的天空
2022/03/16
6460

相似问题

将line_profiler/kernprof与mpiexec一起使用

115

line_profiler和kernprof无法从pip和repro安装。

27

python line_profiler自动

11

Python line_profiler安装

49

Kernprof (line_profiler):如何将结果输出为文本而不是二进制文件

129
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文