Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有图形输出的轻量级微基准库(Java)_Java_Benchmarking - Fatal编程技术网

具有图形输出的轻量级微基准库(Java)

具有图形输出的轻量级微基准库(Java),java,benchmarking,Java,Benchmarking,有没有一个好的Java库可以帮助编写好的微基准测试?我在想一些可以提供(用最少的麻烦)文本(CSV或HTML,随意挑选)结果输出的东西,也许还有总结结果的图表。理想情况下,它应该能够很好地与JUnit或同等产品配合使用,并且应该很容易用可变参数配置基准测试 我看过japex,但发现它太重了(25MB的库不包括在内?!),坦率地说,这只是一个痛苦的工作。几乎不存在的文档,与ant、XML和路径混在一起。。。等等。我们谷歌收藏团队中的一些人正处于创建满足您需求的产品的早期。下面是测量foo()需要多

有没有一个好的Java库可以帮助编写好的微基准测试?我在想一些可以提供(用最少的麻烦)文本(CSV或HTML,随意挑选)结果输出的东西,也许还有总结结果的图表。理想情况下,它应该能够很好地与JUnit或同等产品配合使用,并且应该很容易用可变参数配置基准测试


我看过japex,但发现它太重了(25MB的库不包括在内?!),坦率地说,这只是一个痛苦的工作。几乎不存在的文档,与ant、XML和路径混在一起。。。等等。

我们谷歌收藏团队中的一些人正处于创建满足您需求的产品的早期。下面是测量foo()需要多长时间的代码:

公共类基准1扩展了SimpleBenchmark{
公共无效时间OO(int代表){
对于(int i=0;i

API和工具本身都不是特别稳定的。我们甚至还没有准备好接收bug报告或功能请求!如果我还没有吓跑你,我邀请你去转转。

Oracle现在有了JMH。它不仅是由JIT团队的成员编写的(他们将承担编写好的微基准测试的大部分工作),而且它还具有其他整洁的特性,如可插拔分析器(包括那些将以每行cpu时间打印热点组件的特性)

它打印表格。我对图表不太清楚。基准测试可以配置可变参数。文档相当好


它很容易设置并开始运行。我已经将它与JUnit集成,但是开发人员提供了一个Maven原型来开始使用。

即使在早期,我也可以看出这比japex好得多。我会仔细考虑一下,可能会编写我的基准测试,以便在完成时能够轻松地适应这一点。(再一次)证明Sun可以做任何事情,谷歌的编码人员可以在他们20%的时间里做得更好?正是对japex的失望让我们开始走上了开发之路。:)我正要做同样的事。。。我很高兴我问了这个问题,因为你的版本比我的版本更优雅。我仍然需要调整一些东西来考虑所有不同的参数(并且可能针对我的具体情况对输出进行更多的格式化——以MB/s的速度运行可变字节数,而不是特定的重复大小)。但是,仍然可以节省大量的时间!大量的
public class Benchmark1 extends SimpleBenchmark {
  public void timeFoo(int reps) {
    for (int i = 0; i < reps; i++) {
      foo();
    }
  }
}