diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/common/performanceMeasurements.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/common/performanceMeasurements.kt index 5771c469aa7..6aabbe2906f 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/common/performanceMeasurements.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/common/performanceMeasurements.kt @@ -13,7 +13,7 @@ class JitCompilationMeasurement(private val milliseconds: Long) : PerformanceMea override fun render(): String = "JIT time is $milliseconds ms" } -class CompilerInitializationMeasurement(private val milliseconds: Long) : PerformanceMeasurement { +class CompilerInitializationMeasurement(val milliseconds: Long) : PerformanceMeasurement { override fun render(): String = "INIT: Compiler initialized in $milliseconds ms" } diff --git a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/FullPipelineModularizedTest.kt b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/FullPipelineModularizedTest.kt index 685ea6301f2..09cf29c4b0e 100644 --- a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/FullPipelineModularizedTest.kt +++ b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/FullPipelineModularizedTest.kt @@ -28,6 +28,7 @@ class FullPipelineModularizedTest : AbstractModularizedTest() { private data class CumulativeTime( val gcInfo: Map, + val init: Long, val analysis: Long, val translation: Long, val lowering: Long, @@ -35,13 +36,14 @@ class FullPipelineModularizedTest : AbstractModularizedTest() { val files: Int, val lines: Int ) { - constructor() : this(emptyMap(), 0, 0, 0, 0, 0, 0) + constructor() : this(emptyMap(), 0, 0, 0, 0, 0, 0, 0) operator fun plus(other: CumulativeTime): CumulativeTime { return CumulativeTime( (gcInfo.values + other.gcInfo.values).groupingBy { it.name }.reduce { key, accumulator, element -> GCInfo(key, accumulator.gcTime + element.gcTime, accumulator.collections + element.collections) }, + init + other.init, analysis + other.analysis, translation + other.translation, lowering + other.lowering, @@ -51,7 +53,7 @@ class FullPipelineModularizedTest : AbstractModularizedTest() { ) } - fun totalTime() = analysis + translation + lowering + generation + fun totalTime() = init + analysis + translation + lowering + generation } private lateinit var totalPassResult: CumulativeTime @@ -126,6 +128,7 @@ class FullPipelineModularizedTest : AbstractModularizedTest() { linePerSecondCell(lines, timeMs, timeUnit = MS) } } + phase("Init", total.init, total.files, total.lines) phase("Analysis", total.analysis, total.files, total.lines) phase("Translation", total.translation, total.files, total.lines) phase("Lowering", total.lowering, total.files, total.lines) @@ -262,10 +265,12 @@ class FullPipelineModularizedTest : AbstractModularizedTest() { .associate { it.garbageCollectionKind to GCInfo(it.garbageCollectionKind, it.milliseconds, it.count) } val analysisMeasurement = measurements.filterIsInstance().firstOrNull() + val initMeasurement = measurements.filterIsInstance().firstOrNull() val irMeasurements = measurements.filterIsInstance() return CumulativeTime( gcInfo, + initMeasurement?.milliseconds ?: 0, analysisMeasurement?.milliseconds ?: 0, irMeasurements.firstOrNull { it.kind == IRMeasurement.Kind.TRANSLATION }?.milliseconds ?: 0, irMeasurements.firstOrNull { it.kind == IRMeasurement.Kind.LOWERING }?.milliseconds ?: 0,