gpt4 book ai didi

benchmarking - JMH 中的图 [Java Micro-Benchmarking Harness]

转载 作者:行者123 更新时间:2023-12-01 00:54:45 25 4
gpt4 key购买 nike

我一直在阅读 JMH .但是我找不到使用它生成图的方法。 JMH 是否支持绘图?或者是否有用于此目的的第三方库?

最佳答案

JMH 不支持绘图 .您可以 出业绩结果存入文件 (例如使用 -rf csv-rf json ),并使用您熟悉的任何绘图工具。或者,您可以从 RunResult 中提取性能数据。您从 Java API 获得的实例,并使用任何嵌入式库解析/渲染它。

如果您使用设置来观察单个调用执行时间 (或批量调用)并且您想查看每个持续时间的图(类似于最后一个图 here ),您可以组合设置:

@Measurement(batchSize = 1000, iterations = 500)
@BenchmarkMode({Mode.SingleShotTime})

还有一些脚本可以在 csv 中获取所需的数据。在这样的设置中,jmh 生成的 csv 中只有汇总数据。
mvn package && java -jar target/benchmarks.jar -foe true -rf csv | tee output.txt
N=5 # set here number of benchmarks plus 2
grep Iteration -A 3 output.txt | grep -v Warmup | sed 's/$/,/' | xargs -l$N | sed 's/,$//'

它会输出如下内容:
Iteration 1: 93.915 ±(99.9%) 2066.879 s/op, readerA: 28.487 s/op, readerB: 28.525 s/op, writer: 224.735 s/op, --
Iteration 2: 100.483 ±(99.9%) 1265.993 s/op, readerA: 59.927 s/op, readerB: 60.912 s/op, writer: 180.610 s/op, --
Iteration 3: 76.458 ±(99.9%) 760.395 s/op, readerA: 52.513 s/op, readerB: 52.276 s/op, writer: 124.586 s/op, --
Iteration 4: 84.046 ±(99.9%) 1189.029 s/op, readerA: 46.112 s/op, readerB: 46.724 s/op, writer: 159.303 s/op, --

关于benchmarking - JMH 中的图 [Java Micro-Benchmarking Harness],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28825474/

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