commit | 97a3ee4171e7c43781fce5e857b3255b0e0b3e67 | [log] [tgz] |
---|---|---|
author | ulfjack <ulfjack@google.com> | Tue Nov 20 05:40:35 2018 -0800 |
committer | Copybara-Service <copybara-piper@google.com> | Tue Nov 20 05:41:48 2018 -0800 |
tree | d5ce7c9c4bb341defd15678b895e7d1850e8759a | |
parent | c4d7e31048805a945717ded1d9dfded424808691 [diff] |
Add flag to print more condensed build stats The new flag is called --experimental_stats_summary. I do not consider this flag an incompatible change, since we don't guarantee the exact text output on the command-line. The intent is to switch to the new summary style and then retire the flag. The new stats look like this: INFO: 5,000 processes: 1,000 remote, 1,000 local, 1,000 worker, 2,000 cached INFO: Total action wall time 100.34s INFO: Critical path 5.22s (setup 1.34s, wall time 3.89s) INFO: Elapsed time 8.89s (loading 2.55s, execution 6.34s) The breakdown in the last two lines follows the idea that we want to distinguish between useful work and 'overhead': - For the critical path breakdown, the wall time is the sum of all wall times of all actions on the critical path, whereas 'setup' refers to everything other than subprocess execution wall time. - For the elapsed time breakdown, the execution time is the time of the execution phase (which in turn is determined by the critical path), whereas 'loading' refers to everything other than execution. Terminology is hard and we're already using these terms to denote different things. Suggestions welcome. PiperOrigin-RevId: 222231747
{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.