Query performance: ForkJoinPool for LabelVisitor
This extends --experimental_query_use_fork_join_pool to also apply to
the LabelVisitor.
$ bazel query --order_output=no --noshow_progress \
--experimental_query_use_fork_join_pool \
"deps(//a/large/package/of/genrules:*)" > /dev/null
Before (w/o --experimental_query_use_fork_join_pool):
Cold 1m0.261s
Hot 0m29.655s
Before (w/ --experimental_query_use_fork_join_pool):
Cold 0m44.801s
Hot 0m36.036s
After (w/ --experimental_query_use_fork_join_pool):
Cold 0m25.427s
Hot 0m13.020s
PiperOrigin-RevId: 248526732
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel only rebuilds what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
See CONTRIBUTING.md
Bazel is released in ‘Beta’. See the product roadmap to learn about the path toward a stable 1.0 release.