# BenchmarksResult ## Report for benchmark configuration main * Run on Java HotSpot(TM) 64-Bit Server VM (build 21.0.4+8-LTS-jvmci-23.1-b41) with Java process: ``` C:\Users\altavir\scoop\apps\graalvm-oracle-21jdk\current\bin\java.exe -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant ``` * JMH 1.21 was used in `thrpt` mode with 5 warmup iterations by 10 s and 5 measurement iterations by 10 s. ### [ArrayBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/ArrayBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`benchmarkArrayRead`|1.9E+07 ± 2.3E+05 ops/s| |`benchmarkBufferRead`|1.4E+07 ± 8.7E+05 ops/s| |`nativeBufferRead`|1.4E+07 ± 1.3E+06 ops/s| ### [BigIntBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/BigIntBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`jvmAdd`|5.1E+07 ± 1.3E+06 ops/s| |`jvmAddLarge`|5.1E+04 ± 8.2E+02 ops/s| |`jvmMultiply`|8.5E+07 ± 9.7E+06 ops/s| |`jvmMultiplyLarge`|2.5E+02 ± 15 ops/s| |`jvmParsing10`|8.7E+06 ± 5.1E+05 ops/s| |`jvmParsing16`|6.4E+06 ± 1.8E+05 ops/s| |`jvmPower`|28 ± 0.79 ops/s| |`jvmSmallAdd`|7.0E+07 ± 4.3E+06 ops/s| |`kmAdd`|4.8E+07 ± 2.2E+06 ops/s| |`kmAddLarge`|3.5E+04 ± 3.7E+03 ops/s| |`kmMultiply`|6.7E+07 ± 1.5E+07 ops/s| |`kmMultiplyLarge`|54 ± 4.2 ops/s| |`kmParsing10`|4.5E+06 ± 8.3E+04 ops/s| |`kmParsing16`|4.9E+06 ± 1.1E+05 ops/s| |`kmPower`|10 ± 0.96 ops/s| |`kmSmallAdd`|4.1E+07 ± 5.9E+05 ops/s| ### [BufferBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/BufferBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`bufferViewReadWrite`|5.8E+06 ± 1.6E+05 ops/s| |`bufferViewReadWriteSpecialized`|5.6E+06 ± 2.6E+05 ops/s| |`complexBufferReadWrite`|6.6E+06 ± 2.7E+05 ops/s| |`doubleArrayReadWrite`|7.5E+06 ± 1.0E+06 ops/s| |`doubleBufferReadWrite`|8.0E+06 ± 6.7E+05 ops/s| ### [DotBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/DotBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`bufferedDot`|1.3 ± 0.020 ops/s| |`cmDot`|0.47 ± 0.42 ops/s| |`cmDotWithConversion`|0.76 ± 0.13 ops/s| |`ejmlDot`|6.7 ± 0.091 ops/s| |`ejmlDotWithConversion`|6.4 ± 0.82 ops/s| |`multikDot`|40 ± 6.7 ops/s| |`parallelDot`|12 ± 1.8 ops/s| |`tensorDot`|1.2 ± 0.041 ops/s| |`tfDot`|5.9 ± 0.49 ops/s| ### [ExpressionsInterpretersBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/ExpressionsInterpretersBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`asmGenericExpression`|29 ± 1.2 ops/s| |`asmPrimitiveExpression`|43 ± 1.3 ops/s| |`asmPrimitiveExpressionArray`|71 ± 0.38 ops/s| |`functionalExpression`|5.6 ± 0.11 ops/s| |`justCalculate`|69 ± 9.0 ops/s| |`mstExpression`|7.1 ± 0.020 ops/s| |`rawExpression`|41 ± 1.5 ops/s| ### [IntegrationBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/IntegrationBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`complexIntegration`|3.6E+03 ± 1.9E+02 ops/s| |`doubleIntegration`|3.7E+03 ± 12 ops/s| ### [JafamaBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/JafamaBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`core`|38 ± 0.64 ops/s| |`jafama`|52 ± 0.36 ops/s| |`strictJafama`|52 ± 4.0 ops/s| ### [MatrixInverseBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/MatrixInverseBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`cmLUPInversion`|2.2E+03 ± 76 ops/s| |`ejmlInverse`|1.3E+03 ± 5.7 ops/s| |`kmathLupInversion`|9.5E+02 ± 1.8E+02 ops/s| |`kmathParallelLupInversion`|9.1E+02 ± 1.4E+02 ops/s| ### [NDFieldBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/NDFieldBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`boxingFieldAdd`|7.7 ± 0.79 ops/s| |`multikAdd`|6.5 ± 0.33 ops/s| |`multikInPlaceAdd`|64 ± 0.79 ops/s| |`specializedFieldAdd`|8.0 ± 0.090 ops/s| |`tensorAdd`|9.2 ± 0.053 ops/s| |`tensorInPlaceAdd`|17 ± 10 ops/s| |`viktorAdd`|7.6 ± 1.2 ops/s| ### [ViktorBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/ViktorBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`doubleFieldAddition`|7.7 ± 0.34 ops/s| |`rawViktor`|5.9 ± 1.1 ops/s| |`viktorFieldAddition`|7.3 ± 1.1 ops/s| ### [ViktorLogBenchmark](src/jvmMain/kotlin/space/kscience/kmath/benchmarks/ViktorLogBenchmark.kt) | Benchmark | Score | |:---------:|:-----:| |`rawViktorLog`|1.4 ± 0.076 ops/s| |`realFieldLog`|1.3 ± 0.069 ops/s| |`viktorFieldLog`|1.3 ± 0.032 ops/s|