gpt4 book ai didi

java - Java 中类似于 Criterium 的 BenchMark 框架

转载 作者:行者123 更新时间:2023-12-02 08:47:46 25 4
gpt4 key购买 nike

我正在寻找 Java 基准测试库。我对 Criterium 的功能很熟悉并且很满意Clojure 中的基准测试库。它具有以下功能:

* Statistical processing of multiple evaluations
* Inclusion of a warm-up period, designed to allow the JIT compiler to optimise its code
* Purging of gc before testing, to isolate timings from GC state prior to testing
* A final forced GC after testing to estimate impact of cleanup on the timing results

而且它的界面非常友好

(bench expr & opts)

打印摘要统计报告,例如:

 => (bench (Thread/sleep 1000))

Execution time mean : 1.000803 sec
Execution time std-deviation : 328.501853 us
Execution time lower quantile : 1.000068 sec ( 2.5%)
Execution time upper quantile : 1.001186 sec (97.5%)

我正在 Java 中寻找一个类似的库,也许它公开了一个基准方法,该方法采用 Callable 或 Runnable 并打印类似的报告。如:

  BenchMark.bench(new Callable<String>() {
@Override
public String call() { ... }
})

有谁知道有一个功能齐全、开源免费的啤酒库可以做到这一点?也许还包括内存统计信息?

最佳答案

我认为目前最好的基准测试库之一是 jmh 。它是由 Oracle 人员积极开发的,它是开源的,用于对 openJDK 的部分进行微基准测试,包括并发 API 和 JavaFX。

输出非常全面,可以包括每次操作的时间、每毫秒的操作数、置信区间等。您还可以选择引入线程、争用、共享等。

关于java - Java 中类似于 Criterium 的 BenchMark 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18562880/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com