0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

line_profiler性能分析工具简单的使用

汽车电子技术 来源:Python脚本 作者:idlepig 2023-03-03 14:39 次阅读

line_profiler 是一个用于对函数进行逐行分析的模块。

Python 当前的分析工具仅仅支持一个函数的时间消耗分析。

这当然是在一个程序中定位性能瓶颈的良好第一步,并且通常是优化程序所需要做的所有事情。

但是,有时性能瓶颈的原因实际上是函数中的一行代码,仅仅阅读源代码可能并不明显。

下面举个例子:访问一个提供历史上的每一天发生了什么事情的接口,获取数据之后,格式化输出打印结果即可。

下图代码中黄色的部分,占用了 99.9%的时间,总计 1.63 秒,如果每次都从接口读取数据,花费时间很多,而且接口本身也会有限制。

图片

这个时候考虑到我们自己本身的需求,这个接口是获取历史上的每一天,其实一天获取一次就够了,本地做一个缓存,如果这一天有第二次来访问的,就从本地文件读取,看下图中青色的部分,时间花费就变成了 128 微秒,足足降低了 99.9%左右的时间。

图片

line_profiler 在 pycharm 中使用需要安装插件

图片

然后安装两个第三方库

pip install line_profiler line_profiler_pycharm

使用

在你自己的脚本中导入模块

from line_profiler_pycharm import profile

图片

在函数上添加@profile装饰器即可

图片

最后点一下工具栏上的Profile Lines就能看到上面酷炫的性能分析数据了

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 分析
    +关注

    关注

    2

    文章

    132

    浏览量

    33155
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61309
  • python
    +关注

    关注

    51

    文章

    4675

    浏览量

    83467
收藏 人收藏

    评论

    相关推荐

    鸿蒙开发-DevEco Studio Profiler工具进行帧率分析

    Profiler”。 创建Frame分析任务并录制相关数据 ① 打开Profiler性能分析器; ② 选择待
    发表于 01-16 19:34

    工作中使用Trepn Power Profiler的应用总结

    Trepn™ Profiler 工具的概述Trepn™工具是高通开发的运行在使用高通骁龙芯片或者硬件开发设备等移动设备上 分析功耗和性能的一
    发表于 09-19 18:05

    使用Trepn Profiler中的应用状态功能查找应用问题

    以优化代码,解决问题· Trepn™ Profiler和Trepn plug-infor Eclipse这两款分析工具能够帮助你查找并修复影响应用性能或导致耗电过多的常见问题但你如何能
    发表于 09-20 10:10

    使用Trepn Profiler工具分析Dragonboard410c的功耗和性能

    上篇简单介绍了一下Trepn Profiler工具的功能,那现在使用Trepn Profiler具体来分析一下Dragonboard410c
    发表于 09-25 16:09

    Trepn Power Profiler工具简单操作

    之前已经简单介绍了TrepnPower Profiler的特点,接下来简单介绍一下Trepn Power Profiler的不同模式的功能,通过了解这些有助于
    发表于 09-25 16:09

    Qualcomm Trepn Power Profiler常见问题分析总结

    以前对Trepn Power Profiler进行过简单的介绍,这是Qualcomm开发的一个工具,主要对android设备的功耗和性能进行分析
    发表于 09-25 16:14

    使用Snapdragon Profiler工具分析Dragonboard410c

    之前简单介绍了一下Snapdragon Profiler工具,现在我们实际用它来分析一下Dragonboard410c。启动和配置1、我的系统是ubuntu16.04,直接在Termi
    发表于 09-25 16:14

    为什么Motor Profiler实用程序无法使用上述BLDC电机完成Profiler序列?

    ,4000 rpm通过此设置,Motor Profiler无法成功完成分析序列。在仿形循环期间,在确定电气模型期间,电动机每次仿形尝试都变慢。序列因消息而停止:分析序列需要很长时间。为什么Motor
    发表于 06-05 11:30

    三种提高Python代码性能的简便方法

    函数。  1.基准,基准,基准  基准测试听起来像是一个繁琐的过程,但是如果您已经将工作代码分为多个函数,则可以像在要分析的函数中添加装饰器一样简单。  首先,让我们安装line_profiler,以便
    发表于 08-03 18:37

    使用Motor Profiler测试电机性能

    1.使用Motor Profiler 测试电机性能,它可以粗略的测出电机的内阻,电感,最高转速,转动惯量,感生电动势系数Ke等电机参数以供Workbench在生成代码的时候使用。 在此过程中不多
    发表于 09-16 08:29

    有没有基于Windows的MOTOR PROFILER工具

    嗨,我想为电动滑板设计速度控制器,因为这是针对最终用户市场的,因此大多数最终用户可能不知道他们电机的参数,如 Rs、Ls_d、Ls_q 等,我的问题是 ST 是否有 API 或方法供开发人员检查电机参数,例如基于 Windows 的 MOTOR PROFILER 工具
    发表于 01-03 10:17

    【技术视界】鸿蒙开发套件之DevEco Profiler助您轻松分析应用性能问题

    应用运行过程中的一系列性能指标,并以可视化面板展示这些指标。开发者使用十分简单,只需在DevEco Profiler工具界面的左上角选择好您要观测的应用进程,这一功能即会自动打开。
    发表于 09-15 15:55

    功耗分析臻至入微:Trepn Profiler V6.1更新

    。   Trepn™ Profiler是Qualcomm Technologies, Inc.的一款产品。它是用于移动设备上的应用功耗和性能分析工具。尽管Trepn
    发表于 09-18 19:05 280次阅读

    Unity Profiler分析内存使用状况疑问解答

    在使用Unity开发游戏的过程中,借助Profiler分析内存使用状况是至关重要的。但许多开发者可能还对Profiler中各项数据表示的含义不甚明确,Unity官方的技术工程师柳振东,将针对
    的头像 发表于 01-31 09:52 2024次阅读
    Unity <b class='flag-5'>Profiler</b><b class='flag-5'>分析</b>内存使用状况疑问解答

    如何使用QML Profiler分析QML应用

    在QML应用开发过程中,可以使用QML Profiler来查找应用程序中典型性能问题的原因,例如启动慢、响应慢、用户界面不流畅等。
    的头像 发表于 09-13 11:37 1523次阅读