Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potential build performance regression in the latest versions (likely 2.26) #1790

Open
chao2zhang opened this issue Apr 1, 2020 · 0 comments

Comments

@chao2zhang
Copy link

My colleague monitoring our build pipeline recently notified me about a potential build-time regression of 30secs at 50percentile on CI. This was likely introduced by my change of dagger version bump, from 2.25.4 to 2.27.

I did some profiling using dagger versions 2.25.4, 2.26 and 2.27 and my results can be found here: https://docs.google.com/spreadsheets/d/1tLqwIUzluwqynKbtG3SCTB0Qr8Ne23-Z5wpSeM1EtUI/edit?usp=sharing
On average, for :app:assembleDebug,

  • Dagger 2.25.4: 297.8s on avg
  • Dagger 2.26: 307.2s on avg
  • Dagger 2.27: 311.1s on avg

While I have yet read through every commit through the recent changes in dagger, I would like to call out a few characteristics of our codebase and build environment:

  • I ran my benchmark on MacOS 10.15.4 with 32GB memory
  • Our app heavily uses dagger with java annotation processor (not kapt) and has 80k+ lines in DaggerApplicationComponent.java
  • Our app code has mixed Java and Kotlin code

From the benchmark result, that there is a performance regression introduced in Dagger 2.26, would you mind taking a look? I can definitely share more information if interested. Thanks in advance!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant