我想看看是否有办法告诉JMH仅仅测量一种特定的方法,包括从微基准调用的所有方法。
我希望使用单元测试作为基础来自动创建微基准,这样我就不必手动构建微基准了。在我的研究中,我有一个大型的代码库,我做了一些自动修改,期望它们对性能产生影响。到目前为止,我在被修改的代码中有1200个位置。自动化是必要的,因为我们希望提供一个框架来完成转换,然后自动度量转换的影响。
在这里,JMH:不要考虑内部方法时间提供了一个解决方案,但是我必须手动分离@Start方法中的代码,这似乎与1200个测试用例无关.
发布于 2015-09-10 12:33:11
你不能,因为这不是微观基准。
微基准测试意味着从整体上衡量(一个孤立的)代码段的性能特征,给定精确的环境设置,包括准备数据,并将其输入所选择的方法/系统,测量端到端的度量。这是JMH注定要做的事情:有效载荷是用@Benchmark标记的,它是不可分割的,有可能逐步取消设置和拆卸工作。
无论如何,在其他执行有效负载方法中度量选定的有效负载方法最多会让人感到困惑:如果不知道系统中还发生了什么,那么这些单独的度量就什么也不会告诉您。换句话说,您想要的东西需要分析工具,这些工具能够剖析各个部分对度量的影响。这是分析器和应用性能管理系统注定要做的事情。
https://stackoverflow.com/questions/32461182
复制相似问题