After the other day having switched over to Gradle 1.6 from Gradle 1.5 I have noticed a significant performance decrease in the initial configuration step in Gradle 1.6 compared to the 1.5 version. With initial invocation of gradle I mean after having done a clean code checkout invoking Gradle for the very first time.
See numbers below. Are you aware of any performance issue associated with the 1.6 version?
I have not adjusted my build script for changes pending (for Gradle 2.0) so I do see some new deprication messages.
My Gradle project is fairly large I’d imagine. It is a multiproject containing 198 subprojects.
Performance numbers for an initial ‘gradle tasks’
Gradle 1.6: =========== Total time: 5 mins 25.951 secs Total time: 5 mins 47.84 secs Total time: 5 mins 32.74 secs Total time: 5 mins 7.843 secs (no daemon) Total time: 5 mins 31.888 secs (no daemon, profile) Profile: Description Duration Total Build Time 5m31.91s Startup 1.094s Settings and BuildSrc 3.249s Loading Projects 0.561s Configuring Projects 5m0.02s Task Execution 26.779s Dependency resolution 1.125s Gradle 1.5: =========== Total time: 2 mins 31.647 secs Total time: 2 mins 25.89 secs Total time: 2 mins 21.674 secs (no demon) Total time: 2 mins 28.045 secs Total time: 2 mins 48.135 secs (no-daemon, profile) Profile: Description Duration Total Build Time 2m48.16s Startup 1.060s Settings and BuildSrc 2.417s Loading Projects 0.573s Configuring Projects 2m17.26s Task Execution 26.138s Dependency resolution 1.164s
Across the board the configuration time per subproject is about twice that of Gradle 1.5. The other items are virtually identical. I also supplied the dependency resolution times.
Subsequent invocations of ‘gradle tasks’ are done in ~35s for both Gradle 1.5 and 1.6.
I hope this aids you in your analysis.
Thank you, Stefan Marklund