我是Profiling的新手。我决定从Eclipse TPTP开始,因为它看起来很简单,易于配置
我从这个基本的APplication开始
public class As {
public static void main(String args[]) {
Two t = new Two();
t.two();
}
}
=====================
public class Two
{
public void two() {
System.out.println("Two");
}
}
==============
使用Profile As JavaApplication在As.java上运行Profiler之后。 屏幕截图以这种方式出现:
请看这里拍摄的屏幕
http://imageshack.us/f/11/shareb.jpg/
请告诉我基准时间,平均基准时间和累计时间的含义。
答案 0 :(得分:2)
基准时间:方法执行所花费的时间(以秒为单位)。不包括从此方法调用的任何其他方法的执行时间。
平均基准时间:执行此方法一次所需的平均基准时间。
累计基准时间:此方法执行所花费的时间(以秒为单位)。包括从此方法调用的任何其他方法的执行时间。
调用:调用此方法的次数。
您可能需要查看以下教程,其中包含以下信息:An introduction to profiling Java applications
答案 1 :(得分:0)
实际有用的信息是累计时间占总时间的百分比。 这是例程在堆栈上的时间百分比,即执行自身或调用其他函数,无论它被调用多少次。
这个号码有用的原因是因为如果这样的功能可以大量加速,那么这个百分比会告诉你总时间可以减少多少。
例如,如果例程A的累积百分比时间为10%,那么即使您可以将其时间减少到零,总时间也只会下降10%。 为了使软件更快,您必须找到可以挤压的高累积百分比的例程,通常是通过减少对子例程的调用。
例程的调用计数和平均执行时间仅在它帮助您计算累积百分比的范围内才有用。 此外,除了帮助您找到要优化的功能之外,测量的精度并不重要。 优化功能时,无论预先测量的精确程度如何,节省的时间都是如此。