JDK 25 Parallel GC - Gradle 9.1

The performance comparison between varianta_gradle_9_1_0 and variantb_jdk_25_parallel reveals several key insights. The overall build time for varianta_gradle_9_1_0 averaged 466.318 seconds, slightly higher than variantb_jdk_25_parallel at 448.495 seconds, marking a decrease of about 3.82%. Configuration times also show a decrease from 59.939 seconds in varianta_gradle_9_1_0 to 53.989 seconds in variantb_jdk_25_parallel, a reduction of approximately 9.92%. Notably, garbage collection (GC) was more efficient in variantb_jdk_25_parallel with significantly fewer total collections (74) compared to varianta_gradle_9_1_0 (157). Memory usage peaked slightly higher in variantb_jdk_25_parallel at 11.49 GB compared to 10.98 GB in varianta_gradle_9_1_0. CPU usage was maximized at 100% for both variants, indicating full utilization during the builds.

JDK 25 - Gradle 9.1

The analysis of the Gradle build performance data reveals some key differences between the two variants, varianta_gradle_9_1_0 and variantb_jdk_25. The overall build time for varianta_gradle_9_1_0 averaged 461.379 seconds, slightly faster than variantb_jdk_25 at 469.345 seconds, a difference of about 7.966 seconds or approximately 1.7%. The configuration time showed varianta_gradle_9_1_0 to be slower on average, taking 57.628 seconds compared to 55.901 seconds for variantb_jdk_25, a difference of 1.727 seconds or about 3.1%. Task execution times varied significantly between variants, with variantb_jdk_25 generally taking longer in tasks related to Kotlin compilation and Android resource linking. Memory usage was slightly higher in variantb_jdk_25 across all processes, with a maximum of 10.97 GB compared to 10.95 GB in varianta_gradle_9_1_0. CPU usage was nearly maxed out for both variants. The total garbage collection counts were higher in varianta_gradle_9_1_0 with 157 collections compared to 120 in variantb_jdk_25.

Gradle 9.1.0 vs 9.0.0

The performance comparison between Gradle versions 9.0.0 and 9.1.0 shows minor differences in build times and resource usage. The mean build time for version 9.0.0 is approximately 467 seconds, slightly faster than the 468 seconds for version 9.1.0, a difference of about 1 second or 0.2%. Configuration times are nearly identical, with version 9.0.0 being marginally quicker by about 0.4%. The most time-consuming tasks across both versions are related to Kotlin compilation and Android resource linking, with minor variations in execution times. CPU and memory usage for both the build process and child processes are similar, with no significant differences exceeding 10%. The total garbage collection counts are also comparable, indicating similar memory management efficiency between the two versions.

KGP 2.2.10 vs 2.2.20

The analysis of the Gradle build performance between variants 2.2.10 and 2.2.20 reveals subtle differences in build times and task execution. The overall build time for variant 2.2.20 is slightly higher by about 3.3 seconds (0.92% increase) compared to variant 2.2.10. The configuration time also shows a minor increase of 0.63 seconds (1.46% increase) in variant 2.2.20. Notably, the most time-consuming tasks across both variants include :app:app:hiltJavaCompileDebug, :app:app:mergeExtDexDebug, and :core:cart:compileDebugKotlin, with variant 2.2.20 generally showing a marginal increase in execution times. Memory usage is slightly lower in variant 2.2.20 by about 0.21 GB (2.01% decrease), while CPU usage remains maximized at 100% for both variants. The total garbage collection counts are very close, with variant 2.2.20 having just one more collection than 2.2.10.

JDK 17 vs 21

The analysis of the Gradle build performance between varianta_jdk_17 and variantb_jdk_21 reveals several key insights. The overall build time for varianta_jdk_17 averages 396.626 seconds, while variantb_jdk_21 is slightly faster at 381.929 seconds, showing a reduction of approximately 14.697 seconds (3.7%). The configuration times are very close, with varianta_jdk_17 averaging 44.278 seconds and variantb_jdk_21 at 43.845 seconds. Notably, the most time-consuming tasks across both variants include :core:cart:compileDebugKotlin, :core:identity:compileDebugKotlin, and :core:contact:compileDebugKotlin, with variantb_jdk_21 generally performing better in these areas. Memory usage is higher in variantb_jdk_21 across all processes, with a maximum of 10.84 GB compared to 10.31 GB in varianta_jdk_17. CPU usage is nearly maxed out for both variants. The total garbage collection counts are slightly higher in variantb_jdk_21 with 139 collections compared to 131 in varianta_jdk_17.

AGP 9-alpha02

The performance comparison between two Gradle build variants, varianta_agp_8.12 and variantb_agp_9-alpha02, shows that the newer variant generally improves build performance. The mean build time decreased from 376.749 seconds in varianta to 370.775 seconds in variantb, a reduction of approximately 1.58%. The P50 and P90 values also show improvements with reductions of 1.58% and 5.44% respectively. Notably, the most time-consuming tasks across both variants include :core:identity:compileDebugKotlin, :core:cart:compileDebugKotlin, and :app:app:mergeExtDexDebug, with variantb showing slight improvements in execution times for these tasks. Memory and CPU usage metrics indicate marginal differences, with variantb generally using slightly less memory. The total garbage collection counts are very similar between the variants, suggesting stable memory management across builds.

KSP 2.2.10 with KSP2 Enabled

The analysis of the Gradle build performance data reveals that Variant B (variantb_2.2.10-ksp2) generally has longer build times compared to Variant A (varianta_2.2.10). Specifically, the mean build time for Variant B is approximately 8.2% longer than Variant A, translating to an increase of about 30.3 seconds. This trend is consistent across the P50 and P90 percentiles as well. In task execution, Variant B shows longer times particularly in Kotlin-related tasks, suggesting a possible area for optimization. Memory usage is also higher in Variant B by approximately 15.3%, which could be contributing to the increased build times. The total garbage collection (GC) events are significantly higher in Variant B, indicating more frequent memory management operations which could be impacting performance.

KGP 2.2.10 vs 2.2.0

The analysis of the Gradle build performance data reveals minor differences between the two variants, varianta_2.2.0 and variantb_2.2.10. The overall build time for varianta_2.2.0 averages around 372.6 seconds, while variantb_2.2.10 is slightly faster at 370.4 seconds, marking a modest improvement of approximately 0.6%. The most time-consuming tasks across both variants include :core:identity:compileDebugKotlin, :core:contact:compileDebugKotlin, and :feature:post:compileDebugKotlin, with each showing minor time differences between the variants. Memory usage is slightly higher in variantb_2.2.10 with a peak of 10.94 GB compared to 10.74 GB in varianta_2.2.0. CPU usage for both variants reached the maximum capacity of 100%. The Kotlin build reports indicate a slight efficiency improvement in variantb_2.2.10 in terms of incremental compilation and compiler code generation.

AGP 9.0.0-alpha01 vs AGP 8.12

The analysis of Gradle build performance between two variants, varianta_agp_8.12 and variantb_agp_9-alpha01, reveals a slight increase in overall build time in the newer variant by approximately 0.35 seconds (0.35% increase). The configuration time also shows a minor increase by about 0.09 seconds (2.15% increase). The most time-consuming tasks across both variants include :core:cart:compileDebugKotlin, :core:identity:compileDebugKotlin, and :core:contact:compileDebugKotlin, with marginal differences in execution times between the variants. Memory usage is slightly higher in variantb_agp_9-alpha01 for all processes and specifically for build child processes. CPU usage remains nearly identical across both variants. The total garbage collection counts are slightly reduced in the newer variant.

Gradle 9.1.0-RC1 vs 9.0.0

The analysis of the Gradle build performance between variants varianta_9.0.0 and variantb_9.1.0-rc-1 reveals slight differences in build times and resource usage. The overall build time for varianta_9.0.0 averaged 203.511 seconds, while variantb_9.1.0-rc-1 was slightly slower at 204.142 seconds, marking a 0.31% increase. Notably, the :app:app:mergeExtDexDebug task showed a significant increase in execution time in the newer variant. CPU and memory usage across all processes were nearly maxed out for both variants, with a slight increase in memory usage in variantb_9.1.0-rc-1. The total garbage collection events also saw a small rise from 101 to 103 events on average.