Priority for parallel task executions

(Staffan Forsell) #1

I have a multi project build with this layout

  • :OldWrappedMakeBuild
    • tasks init, compile, test (all of these are slow, 30s+)
  • :FastGradleJavaProject1 through :FastGradleJavaProject60
    • lots of small parallelizable tasks

When I run a clean build with --parallel I typically see a lot of small java tasks chunking away for 20-40s+ in my 8 executors and then OldWrappedMakeBuild:init starts to execute.
When OldWrappedMakeBuild:init has finished, the other java task are done but OldWrappedMakeBuild:compile and OldWrappedMakeBuild:test has yet to start.

If I could hint the the executor to start OldWrappedMakeBuild with tasks higher precedence, then the whole build time would decrease significantly, both on local builds and in CI.

I would guess that this would need some way of prioritizing tasks for execution.

I can’t see any current way to accomplish this? Is is there?