The Kotlin and Groovy DSLs should have similar performance characteristics
### Expected Behavior The Kotlin and Groovy DSLs have as much as possible similar performance characteristics. IOW there's no outlier use case for which the performance characteristics make using one or the other DSL a penalty. ### Current Behavior What follows is the current state of affairs as **Gradle 6.8** for four use cases: - first use (e.g. ephemeral CI agent or clean workstation without build cache) - buildSrc abi change - buildSrc non-abi change - nothing changes ## Data for Gradle 6.8 > **24 Jan 2025 Update (@oleg-nenashev ):** As the Gradle's TeamCity instance is no longer public, the performance reports are no longer accessible. The structure has also changed since 6.8. See https://github.com/gradle/gradle/issues/32164 The data below comes from performance tests run on the Gradle CI. Those tests use a build with a large number of projects and build scripts, the build scripts being rather simple, and they run on both the Groovy and Kotlin DSL for comparison. <details> <summary>Old Links</summary> | Use case | Groovy | Kotlin | Differences | | --- | --- | --- | --- | | **First use** | :green_circle: 33.5s | :red_circle: 76.2s | Groovy DSL is 2.2x faster | | **`buildSrc` abi change** | :green_circle: 13.2s | :red_circle: 42.3s | Groovy DSL is 3.2x faster | | **`buildSrc` non-abi change** | :red_circle: 13s | :green_circle: 5.2s | Kotlin DSL is 2.5x faster | | **Nothing changes** | :large_blue_circle: 1.7s | :large_blue_circle: 1.8s | Similar performanc
Posted by eskatos on Jan 20, 2021, 2:33 PM
Tags
Related issues
- [Meta] Feedback on granular control over Copilot changes
- unexpected status 401 Unauthorized issue
- [MODEL] Measurable quality regression in Claude generation 5 (Fable 5 / Opus 5 / Sonnet 5): worse nonsense detection, ~2x verbosity, under-disclosed model fallb
- [CRITICAL] Subagent spawning and subagent pattern bugs trigger infinite recursion, infinite token usage, grossly inefficient token usage, and lost accumulated s
- Video stops playing after some minutes
- [MODEL] Claude verbose code comments by default — ignores instructions to stop.
Raise real-world problems, find people facing the same issue, and discuss solutions.3,000 issues0 comments
github (Software)
[Meta] Feedback on granular control over Copilot changes
unexpected status 401 Unauthorized issue
[MODEL] Measurable quality regression in Claude generation 5 (Fable 5 / Opus 5 / Sonnet 5): worse nonsense detection, ~2x verbosity, under-disclosed model fallb
[CRITICAL] Subagent spawning and subagent pattern bugs trigger infinite recursion, infinite token usage, grossly inefficient token usage, and lost accumulated s
Video stops playing after some minutes
[MODEL] Claude verbose code comments by default — ignores instructions to stop.
Scope Codex VS Code chats to the current workspace/project
Update on "Co-authored-by: Copilot" in commit messages
The Kotlin and Groovy DSLs should have similar performance characteristics
### Expected Behavior The Kotlin and Groovy DSLs have as much as possible similar performance characteristics. IOW there's no outlier use case for which the performance characteristics make using one or the other DSL a penalty. ### Current Behavior What follows is the current state of affairs as **Gradle 6.8** for four use cases: - first use (e.g. ephemeral CI agent or clean workstation without build cache) - buildSrc abi change - buildSrc non-abi change - nothing changes ## Data for Gradle 6.8 > **24 Jan 2025 Update (@oleg-nenashev ):** As the Gradle's TeamCity instance is no longer public, the performance reports are no longer accessible. The structure has also changed since 6.8. See https://github.com/gradle/gradle/issues/32164 The data below comes from performance tests run on the Gradle CI. Those tests use a build with a large number of projects and build scripts, the build scripts being rather simple, and they run on both the Groovy and Kotlin DSL for comparison. <details> <summary>Old Links</summary> | Use case | Groovy | Kotlin | Differences | | --- | --- | --- | --- | | **First use** | :green_circle: 33.5s | :red_circle: 76.2s | Groovy DSL is 2.2x faster | | **`buildSrc` abi change** | :green_circle: 13.2s | :red_circle: 42.3s | Groovy DSL is 3.2x faster | | **`buildSrc` non-abi change** | :red_circle: 13s | :green_circle: 5.2s | Kotlin DSL is 2.5x faster | | **Nothing changes** | :large_blue_circle: 1.7s | :large_blue_circle: 1.8s | Similar performanc
Comments (0)
No comments yet. Start the discussion.