小编Art*_*yan的帖子

为什么JMH说返回1比返回0更快

有人可以解释为什么JMH说返回1比返回0快吗?

这是基准代码.

import org.openjdk.jmh.annotations.*;

import java.util.concurrent.TimeUnit;

@State(Scope.Thread)
@BenchmarkMode(Mode.Throughput)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Fork(value = 3, jvmArgsAppend = {"-server", "-disablesystemassertions"})
public class ZeroVsOneBenchmark {

    @Benchmark
    @Warmup(iterations = 3, time = 2, timeUnit = TimeUnit.SECONDS)
    public int zero() {
        return 0;
    }

    @Benchmark
    @Warmup(iterations = 3, time = 2, timeUnit = TimeUnit.SECONDS)
    public int one() {
        return 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

结果如下:

# Run complete. Total time: 00:03:05

Benchmark                       Mode   Samples        Score  Score error    Units
c.m.ZeroVsOneBenchmark.one     thrpt        60  1680674.502    24113.014   ops/ms
c.m.ZeroVsOneBenchmark.zero    thrpt        60   735975.568    14779.380 …
Run Code Online (Sandbox Code Playgroud)

java performance benchmarking jmh

22
推荐指数
1
解决办法
2299
查看次数

标签 统计

benchmarking ×1

java ×1

jmh ×1

performance ×1