Erlang 性能测试

论坛 期权论坛 脚本     
匿名技术用户   2020-12-27 14:28   11   0

转载:http://cryolite.iteye.com/blog/242933


一、eprof的使用
A. eprof可以植入到程序代码中
过程记下:
1. 启动eprof服务器

Java代码 收藏代码
  1. eprof:start()


2. 开始profiling
Java代码 收藏代码
  1. eprof:profile([self()])

或者
Java代码 收藏代码
  1. eprof:start_profiling([self()])


3.停止profing
Java代码 收藏代码
  1. eprof:stop_profiling()


4.现在就可以查看并分析结果了(不要停止eporf)
Java代码 收藏代码
  1. eprof:analyse()


B、通过eprof:profile启动待测试程序
Java代码 收藏代码
  1. 1. eprof:start()
  2. 2. eprof:profile([self()], Mod, Fun, Args) %启动待测试程序
  3. 3. eprof:stop_profiling()
  4. 4. eprof:analyse()


二、timer工具
timer模块中有tc函数用来测试某函数的执行时间,调用
timer:tc(Mod, Fun, Args)
即可测试Mod:Fun函数的执行时间,注意结果单位是微秒(μs,microsecond),而不是毫秒(ms,millisecond)
1s=1000ms,1 ms=1000μs

不过很好奇这个微秒是怎么得出来的,计算机有这么高的精度吗,存疑。

三、erlang:statistics函数
statistics函数可用来统计某段代码的执行时间
Java代码 收藏代码
  1. statistics(wall_clock),
  2. ...........待统计的代码
  3. {_, Time} = statistics(wall_clock),

Time即为这端代码的运行时间
单位是毫秒(ms, millisecond)
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP