diff --git a/performance/numerical/src/main/kotlin-jvm/launcher.kt b/performance/numerical/src/main/kotlin-jvm/launcher.kt index 5a46d55d80b..1938943c781 100644 --- a/performance/numerical/src/main/kotlin-jvm/launcher.kt +++ b/performance/numerical/src/main/kotlin-jvm/launcher.kt @@ -14,6 +14,8 @@ actual class NumericalLauncher : Launcher() { } fun jvmBellardPi() { - for (n in 1 .. 1000 step 9) - pi_nth_digit(n) + for (n in 1 .. 1000 step 9) { + val result = pi_nth_digit(n) + Blackhole.consume(result) + } } diff --git a/performance/numerical/src/main/kotlin-native/launcher.kt b/performance/numerical/src/main/kotlin-native/launcher.kt index e60d527df7d..af7cdef7fb7 100644 --- a/performance/numerical/src/main/kotlin-native/launcher.kt +++ b/performance/numerical/src/main/kotlin-native/launcher.kt @@ -15,8 +15,10 @@ actual class NumericalLauncher : Launcher() { } fun konanBellardPi() { - for (n in 1 .. 1000 step 9) - pi_nth_digit(n) + for (n in 1 .. 1000 step 9) { + val result = pi_nth_digit(n) + Blackhole.consume(result) + } } fun clangBellardPi() { diff --git a/performance/numerical/src/main/kotlin/main.kt b/performance/numerical/src/main/kotlin/main.kt index 9f1d75de188..6d68e22d419 100644 --- a/performance/numerical/src/main/kotlin/main.kt +++ b/performance/numerical/src/main/kotlin/main.kt @@ -17,4 +17,4 @@ fun main(args: Array) { arguments.filter, arguments.filterRegex, arguments.verbose) } else emptyList() }, benchmarksListAction = launcher::benchmarksListAction) -} +} \ No newline at end of file diff --git a/performance/ring/src/main/kotlin-jvm/org/jetbrains/ring/Utils.kt b/performance/ring/src/main/kotlin-jvm/org/jetbrains/ring/Utils.kt index d33c0afee21..6f475fcb238 100644 --- a/performance/ring/src/main/kotlin-jvm/org/jetbrains/ring/Utils.kt +++ b/performance/ring/src/main/kotlin-jvm/org/jetbrains/ring/Utils.kt @@ -15,20 +15,6 @@ */ package org.jetbrains.ring - -import java.io.File - -//-----------------------------------------------------------------------------// - -actual class Blackhole { - actual companion object { - actual var consumer = 0 - actual fun consume(value: Any) { - consumer += value.hashCode() - } - } -} - //-----------------------------------------------------------------------------// actual class Random actual constructor() { diff --git a/performance/ring/src/main/kotlin-native/org/jetbrains/ring/Utils.kt b/performance/ring/src/main/kotlin-native/org/jetbrains/ring/Utils.kt index 7721ace5b58..4252b9954b3 100644 --- a/performance/ring/src/main/kotlin-native/org/jetbrains/ring/Utils.kt +++ b/performance/ring/src/main/kotlin-native/org/jetbrains/ring/Utils.kt @@ -16,20 +16,6 @@ package org.jetbrains.ring -import platform.posix.* - -//-----------------------------------------------------------------------------// - -actual class Blackhole { - @kotlin.native.ThreadLocal - actual companion object { - actual var consumer = 0 - actual fun consume(value: Any) { - consumer += value.hashCode() - } - } -} - //-----------------------------------------------------------------------------// actual class Random actual constructor() { diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassBaselineBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassBaselineBenchmark.kt index c7bb78f8a95..114494ff599 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassBaselineBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassBaselineBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class ClassBaselineBenchmark { //Benchmark diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassStreamBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassStreamBenchmark.kt index 4ab4d981436..793824ac9bc 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassStreamBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/ClassStreamBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class ClassStreamBenchmark { private var _data: Iterable? = null val data: Iterable diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/ElvisBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/ElvisBenchmark.kt index 8b80fa3635e..76e14666fad 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/ElvisBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/ElvisBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class ElvisBenchmark { class Value(var value: Int) diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/IntBaselineBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/IntBaselineBenchmark.kt index a1ac5127cd3..32a152f7cd4 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/IntBaselineBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/IntBaselineBenchmark.kt @@ -16,6 +16,7 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole open class IntBaselineBenchmark { diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/IntStreamBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/IntStreamBenchmark.kt index 3989ad889a0..49b8bb579c3 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/IntStreamBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/IntStreamBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class IntStreamBenchmark { private var _data: Iterable? = null val data: Iterable diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/LoopBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/LoopBenchmark.kt index a07434eabf3..72de74fb1b5 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/LoopBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/LoopBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class LoopBenchmark { lateinit var arrayList: List lateinit var array: Array diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/SwitchBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/SwitchBenchmark.kt index 34250c7d1e0..42b33629b2d 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/SwitchBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/SwitchBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + val SPARSE_SWITCH_CASES = intArrayOf(11, 29, 47, 71, 103, 149, 175, 227, 263, 307, 361, 487, 563, 617, 677, diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/Utils.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/Utils.kt index 42faefc870d..ce22326fb4d 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/Utils.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/Utils.kt @@ -18,13 +18,6 @@ package org.jetbrains.ring const val BENCHMARK_SIZE = 10000 -expect class Blackhole { - companion object { - var consumer: Int - fun consume(value: Any) - } -} - expect class Random() { companion object { var seedInt: Int diff --git a/performance/ring/src/main/kotlin/org/jetbrains/ring/WithIndiciesBenchmark.kt b/performance/ring/src/main/kotlin/org/jetbrains/ring/WithIndiciesBenchmark.kt index b4fcc841e99..0753393abee 100644 --- a/performance/ring/src/main/kotlin/org/jetbrains/ring/WithIndiciesBenchmark.kt +++ b/performance/ring/src/main/kotlin/org/jetbrains/ring/WithIndiciesBenchmark.kt @@ -16,6 +16,8 @@ package org.jetbrains.ring +import org.jetbrains.benchmarksLauncher.Blackhole + open class WithIndiciesBenchmark { private var _data: ArrayList? = null val data: ArrayList diff --git a/performance/shared/src/main/kotlin-jvm/org/jetbrains/benchmarksLauncher/Utils.kt b/performance/shared/src/main/kotlin-jvm/org/jetbrains/benchmarksLauncher/Utils.kt index 89bd0e0834a..1bf91970850 100644 --- a/performance/shared/src/main/kotlin-jvm/org/jetbrains/benchmarksLauncher/Utils.kt +++ b/performance/shared/src/main/kotlin-jvm/org/jetbrains/benchmarksLauncher/Utils.kt @@ -45,3 +45,14 @@ actual fun printStderr(message: String) { actual fun currentTime(): String = SimpleDateFormat("HH:mm:ss").format(Date()) +actual fun nanoTime(): Long = System.nanoTime() + +actual class Blackhole { + actual companion object { + actual var consumer = 0 + actual fun consume(value: Any) { + consumer += value.hashCode() + } + } +} + diff --git a/performance/shared/src/main/kotlin-native/common/org/jetbrains/benchmarksLauncher/Utils.kt b/performance/shared/src/main/kotlin-native/common/org/jetbrains/benchmarksLauncher/Utils.kt index 0c2d2e71f97..000c40c2818 100644 --- a/performance/shared/src/main/kotlin-native/common/org/jetbrains/benchmarksLauncher/Utils.kt +++ b/performance/shared/src/main/kotlin-native/common/org/jetbrains/benchmarksLauncher/Utils.kt @@ -49,3 +49,14 @@ actual fun printStderr(message: String) { fflush(STDERR) } +actual fun nanoTime(): Long = kotlin.system.getTimeNanos() + +actual class Blackhole { + @kotlin.native.ThreadLocal + actual companion object { + actual var consumer = 0 + actual fun consume(value: Any) { + consumer += value.hashCode() + } + } +} \ No newline at end of file diff --git a/performance/shared/src/main/kotlin/org/jetbrains/benchmarksLauncher/Utils.kt b/performance/shared/src/main/kotlin/org/jetbrains/benchmarksLauncher/Utils.kt index 33431b16eb7..a2a03c203ae 100644 --- a/performance/shared/src/main/kotlin/org/jetbrains/benchmarksLauncher/Utils.kt +++ b/performance/shared/src/main/kotlin/org/jetbrains/benchmarksLauncher/Utils.kt @@ -26,4 +26,13 @@ expect fun cleanup() expect fun printStderr(message: String) -expect fun currentTime(): String \ No newline at end of file +expect fun currentTime(): String + +expect fun nanoTime(): Long + +expect class Blackhole { + companion object { + var consumer: Int + fun consume(value: Any) + } +} \ No newline at end of file