gpt4 book ai didi

java - 指定 Google Caliper 基准的附加维度

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

我正在使用 Google Caliper(最新的主代码)对二维的四段代码进行基准测试。例如,以下基准测试方法:

@Benchmark mechanismOneBreadth(...)
@Benchmark mechanismOneDepth(...)
@Benchmark mechanismTwoBreadth(...)
@Benchmark mechanismTwoDepth(...)

我想做的是用一些额外的维度来注释每个基准,以便在结果应用程序上显示/操作,这样我就可以比较一深度与一宽度,也可以比较一深度与两深度,一宽与二宽。例如:

@Benchmark @Dimensions({"one", "breadth"}) mechanismOneBreadth(...)
@Benchmark @Dimensions({"one", "depth"}) mechanismOneDepth(...)
@Benchmark @Dimensions({"two", "breadth"}) mechanismTwoBreadth(...)
@Benchmark @Dimensions({"two", "depth"}) mechanismTwoDepth(...)

指定的尺寸与在 UI 上显示的参数非常相似,但我无法使用参数,因为每种情况下调用的代码都不同。当前版本的 Caliper 有办法做到这一点吗?

最佳答案

The dimensions specified would act very much like parameters for display on the UI, but I can't use parameters because the called code is different in each case.

但是你可以(我经常这样做)。只需编写一个方法来测试参数并分派(dispatch)到您想要的方法。由于整个循环都发生在内部,因此开销完全可以忽略不计,所以为什么不呢?

PS:如果某些组合没有意义,您可以使用抛出新的 SkipThisScenarioException,假设您使用的是当前版本(我使用的是 git 中的版本,不知道发布了什么)。

关于java - 指定 Google Caliper 基准的附加维度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26443679/

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