GROOVY-12162: Harden and extend bytecode peephole optimization#2707
GROOVY-12162: Harden and extend bytecode peephole optimization#2707daniellansun wants to merge 1 commit into
Conversation
0ce2212 to
58dcf7a
Compare
There was a problem hiding this comment.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.50.
| Benchmark suite | Current: 1af9d64 | Previous: 9b4176b | Ratio |
|---|---|---|---|
org.apache.groovy.bench.dispatch.CallsiteBench.dispatch_3_polymorphic_java |
5691.388654636719 ops/ms |
1955.236532921272 ops/ms |
2.91 |
org.apache.groovy.bench.dispatch.CallsiteBench.dispatch_8_megamorphic_java |
5464.4882871295895 ops/ms |
2104.722797070265 ops/ms |
2.60 |
org.apache.groovy.bench.AryBench.groovyCS ( {"n":"1000000"} ) |
269.68580655 ms/op |
121.84325067058822 ms/op |
2.21 |
org.apache.groovy.bench.AryBench.java ( {"n":"1000000"} ) |
272.513390825 ms/op |
122.03707291764707 ms/op |
2.23 |
This comment was automatically generated by workflow using github-action-benchmark.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #2707 +/- ##
==================================================
+ Coverage 69.1120% 69.1185% +0.0065%
- Complexity 34251 34272 +21
==================================================
Files 1537 1538 +1
Lines 129403 129427 +24
Branches 23526 23535 +9
==================================================
+ Hits 89433 89458 +25
+ Misses 31944 31943 -1
Partials 8026 8026
🚀 New features to boost your workflow:
|
JMH summary — classic (commit
|
| Group | Speedup | Calibrated | n |
|---|---|---|---|
| bench | 0.966 × | 0.989 × | 84 |
| core | 0.968 × | 0.877 × | 77 |
| grails | 0.971 × | 0.950 × | 80 |
⚠️ Runner speed differs ≥15% from the historical baseline hardware for: core-hz. Raw speedups are not meaningful for those parts — use the calibrated column.
Runner calibration (this run vs baseline hardware): bench 0.98× (26 rulers) · core-ag 1.06× (3 rulers) · core-hz 1.16× (3 rulers) · grails-ad 1.04× (3 rulers) · grails-ez 1.01× (3 rulers)
Baseline: dev/bench/jmh/<part>/classic/data.js on gh-pages, trailing 90 days. Daily dashboard · Per-suite raw data
JMH summary — indy (commit
|
| Group | Speedup | Calibrated | n |
|---|---|---|---|
| bench | 1.112 × | 0.941 × | 84 |
| core | 3.452 × | 3.257 × | 77 |
| grails | 2.247 × | 2.419 × | 80 |
⚠️ Runner speed differs ≥15% from the historical baseline hardware for: bench. Raw speedups are not meaningful for those parts — use the calibrated column.
Runner calibration (this run vs baseline hardware): bench 1.15× (26 rulers) · core-ag 1.14× (3 rulers) · core-hz 0.97× (3 rulers) · grails-ad 0.95× (3 rulers) · grails-ez 0.91× (3 rulers)
Baseline: dev/bench/jmh/<part>/indy/data.js on gh-pages, trailing 90 days. Daily dashboard · Per-suite raw data
58dcf7a to
bf2f825
Compare
bf2f825 to
1af9d64
Compare
|
✅ All tests passed ✅🏷️ Commit: 1af9d64 Learn more about TestLens at testlens.app. |



https://issues.apache.org/jira/browse/GROOVY-12162