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()
 }