内容简介:pLua Lua 性能分析工具 原理 类似于 gperftools,通过定时器信号回调查看调用栈,来定位调用的热点 特性 简单,只需几行代码,即可输出结果 准确,相比 lua hook,定时采样的方式更能准确捕获 lua 执行的热点 轻量...
pLua
Lua 性能分析工具
原理
类似于 gperftools,通过定时器信号回调查看调用栈,来定位调用的热点
特性
- 简单,只需几行代码,即可输出结果
- 准确,相比 lua hook,定时采样的方式更能准确捕获 lua 执行的热点
- 轻量,因为是采样的,相比直接按行 lua hook,能最小程度影响宿主程序的运行
- 直观,输出调用图,能直观的看到热点和调用关系
使用
Lua code
-- 引入libplua.so
local p = require "libplua"
-- 开启采样
-- 参数1:采样时间(秒),0表示一直采样
-- 参数2:采样结果文件
p.start(0, "call.pro")
do_some_thing()
-- 结束采样,输出结果文件
p.stop()
-- 把结果转成txt格式
p.text("call.pro", "call.txt")
-- 把结果转成dot格式,可用graphviz查看
p.dot("call.pro", "call.dot")
-- 把结果转成svg格式,可直接用浏览器打开查看
p.svg("call.pro", "call.svg")
编译
- 安装 lua 5.3
- 安装 graphviz
- 编译 pLua
$ cmake . $ make
示例
运行lua test1.lua、lua test2.lua 查看svg结果
[test1]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
逆向工程权威指南
Dennis Yurichev(丹尼斯) / 安天安全研究与应急处理中心 / 人民邮电出版社 / 2017-3-1 / 168
逆向工程是一种分析目标系统的过程,旨在于识别系统的各组件以及组件间关系,以便于通过其它形式、或在较高的抽象层次上,重建系统的表征。 本书专注于软件的逆向工程,是写给初学者的一本经典指南。全书共分为12个部分,共102章,涉及X86/X64、ARM/ARM-64、MIPS、Java/JVM等重要话题,详细解析了Oracle RDBMS、Itanium、软件狗、LD_PRELOAD、栈溢出、EL......一起来看看 《逆向工程权威指南》 这本书的介绍吧!
