Coverage Summary for Class: JvmTestBenchmark (bench)
Class |
Class, %
|
Method, %
|
Branch, %
|
Line, %
|
Instruction, %
|
JvmTestBenchmark |
0%
(0/1)
|
0%
(0/5)
|
|
0%
(0/5)
|
0%
(0/13)
|
package bench
import java.util.concurrent.TimeUnit
import jdk.incubator.vector.LongVector
import org.openjdk.jmh.annotations.*
const val WARMUP_ITERATIONS = 5
@State(Scope.Benchmark)
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Warmup(iterations = WARMUP_ITERATIONS, time = 1, timeUnit = TimeUnit.SECONDS)
@Measurement(iterations = 1, time = 1, timeUnit = TimeUnit.SECONDS)
@Fork(value = 1, jvmArgsAppend = ["--add-modules=jdk.incubator.vector"])
class JvmTestBenchmark {
private var data = 0.0
@Setup
fun setUp() {
data = 3.0
}
@Benchmark
fun sqrtBenchmark(): Double {
return Math.sqrt(data)
}
@Benchmark
fun cosBenchmark(): Double {
return Math.cos(data)
}
@Benchmark fun vectorAPI() = LongVector.SPECIES_PREFERRED.length()
}