一、简介 1、热点函数性能测试就是指对代码中的函数进行测试,测试函数被调用次数、执行时间、占用CPU等数据,进而测试出函数的性能情况 二、方法 1、某厂内部使用了Magic Sniffer工具,可以获取PC端正在运行的所有程序从而抓取程序中正在运行的进程,进而抓取每个运行的线程,工具可以显示每个函数的运行次数、 CPU占用、被某个函数调用、调用了哪些其他函数,运行时间等(但没开源) 2、python代码 pycharm提供了一个Profile工具(企业版才有这个工具),使用该工具运行当前py文件,可以分析出当前py文件内各个函数的运行情况,包括各个函数运行次数、、运行时间、CPU占用、以及各个函数之间的调用关系;详情见:Pycharm中Profile工具
不是企业版的话,可以导入profile函数来进行测试函数性能,但无法显示各个函数之间的调用关系
控制台输出显示:
控制台数据含义
ncalls 函数总的调用次数 = callcount
tottime 函数内部(不包括子函数)的占用时间
percall(第一个) tottime/ncalls
cumtime 函数包括子函数所占用的时间
percall(第二个)cumtime/ncalls
filename:lineno(function) 文件:行号(函数)
3、JunitPerf工具 针对Java代码,可以在代码内嵌入JunitPerf工具,也可以测试出各个代码的性能数据,详情见:Java性能测试工具——JunitPerf
|