Does Using Bazel Help Speed Up Continuous Integration Builds?
Shenyu Zheng, Bram Adams, Ahmed E. Hassan

TL;DR
This study investigates whether Bazel accelerates CI builds by analyzing 383 projects, revealing significant speedups with parallel and incremental builds, and offering practical guidance for developers to optimize Bazel usage.
Contribution
It provides empirical evidence on Bazel's performance benefits in CI environments and compares its effectiveness with traditional build tools like Maven.
Findings
Median speedup of 2.00x to 12.80x with parallel builds at increasing degrees of parallelism.
Incremental builds achieve median speedups of around 4.2x to 4.7x for long-build projects.
Approximately 31% of Bazel projects do not utilize Bazel in CI, indicating room for optimization.
Abstract
A long continuous integration (CI) build forces developers to wait for CI feedback before starting subsequent development activities, leading to time wasted. In addition to a variety of build scheduling and test selection heuristics studied in the past, new artifact-based build technologies like Bazel have built-in support for advanced performance optimizations such as parallel build and incremental build (caching of build results). However, little is known about the extent to which new build technologies like Bazel deliver on their promised benefits, especially for long-build duration projects. In this study, we collected 383 Bazel projects from GitHub, then studied their parallel and incremental build usage of Bazel in 4 popular CI services, and compared the results with Maven projects. We conducted 3,500 experiments on 383 Bazel projects and analyzed the build logs of a subset of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsHealth, Technology, Consumer Behavior
