kmath/benchmarks
2024-10-04 14:55:15 +03:00
..
docs Fix benchmark results script 2024-08-26 13:37:49 +03:00
src add dokka multimodule 2024-10-04 14:55:15 +03:00
build.gradle.kts add dokka multimodule 2024-10-04 14:55:15 +03:00
README.md Fix benchmark results script 2024-08-26 13:37:49 +03:00

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

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

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

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

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

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

Benchmark Score
complexIntegration 3.6E+03 ± 1.9E+02 ops/s
doubleIntegration 3.7E+03 ± 12 ops/s

JafamaBenchmark

Benchmark Score
core 38 ± 0.64 ops/s
jafama 52 ± 0.36 ops/s
strictJafama 52 ± 4.0 ops/s

MatrixInverseBenchmark

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

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

Benchmark Score
doubleFieldAddition 7.7 ± 0.34 ops/s
rawViktor 5.9 ± 1.1 ops/s
viktorFieldAddition 7.3 ± 1.1 ops/s

ViktorLogBenchmark

Benchmark Score
rawViktorLog 1.4 ± 0.076 ops/s
realFieldLog 1.3 ± 0.069 ops/s
viktorFieldLog 1.3 ± 0.032 ops/s