1.微基准测试
测量微小代码单元的性能,包括调用同步方法的用时与非同步方法的用时比较。创建线程的代价与使用线程池的代价,执行某种算法的耗时与其替代实现的耗时。
1.1必须使用被测的结果
1.2不要包括无关的操作
1.3必须输入合理的参数
还需要留意编译效应。编译器编译方法时,会依据代码的性能分析反馈来决定所使用的最佳优化策略。性能分析反馈基于一下因素:频繁调用的方法、调用时的栈深度、方法参数的实际类型等,它还依赖于代码实际运行的环境。
2.宏基准测试
复杂系统各个部分的叠加,各部分的行为有大不同。所以应考量各个不同系统的性能优化。测试整体应用的另外一个原因是资源的分配。
3.介基准测试
介基准测试与微基准测试相比隐患更少,又比宏基准测试容易。介基准测试不包含会被编译器优化的大量死代码(除非应用中真的存在死代码,否则这种情况下优化是件好事)。介基准测试更容易线程化:它们比全应用时运行的代码更容易遇到同步瓶颈,不过这些是实际应用在更大规模硬件系统和更大负载时,最终都会遇到的瓶颈。