Allow to build libxul and libxul-gtest in parallel
Categories
(Firefox Build System :: General, enhancement)
Tracking
(firefox70 fixed)
| Tracking | Status | |
|---|---|---|
| firefox70 | --- | fixed |
People
(Reporter: glandium, Assigned: glandium)
References
Details
Attachments
(1 file)
I'm testing a patch that generally separates static and shared libraries built in the same directory as far as cross-directory dependencies are concerned, allowing to build libxul and libxul-gtest in parallel.
See https://bugzilla.mozilla.org/show_bug.cgi?id=1571636#c6 why this might be beneficial.
| Assignee | ||
Comment 1•6 years ago
|
||
When a directory, like toolkit/library, builds both a static and a
shared library, and another, like toolkit/library/gtest, depends on the
static part, it currently needs to wait for the shared library to be
finished building, preventing both libraries being built in parallel.
By separating shared libraries to a different target, we allow more
parallelism to the build.
| Assignee | ||
Comment 3•6 years ago
|
||
Build time improvements are already visible:
https://treeherder.mozilla.org/perf.html#/graphs?series=autoland,1930882,1,2&series=autoland,1922228,1,2&series=autoland,1921038,1,2&series=autoland,1922220,1,2&series=autoland,1922597,1,2
https://treeherder.mozilla.org/perf.html#/graphs?series=autoland,1921132,1,2&series=autoland,1930129,1,2&series=autoland,1921819,1,2&series=autoland,1928920,1,2&series=autoland,1928433,1,2
Comment 4•6 years ago
|
||
| bugherder | ||
Comment 5•6 years ago
|
||
== Change summary for alert #22338 (as of Thu, 08 Aug 2019 11:41:35 GMT) ==
Improvements:
22% build times linux32-shippable opt nightly taskcluster-c5d.4xlarge 4,423.80 -> 3,463.56
22% build times linux32-shippable opt nightly taskcluster-m5.4xlarge 4,649.29 -> 3,643.90
21% build times linux32-shippable opt nightly taskcluster-m4.4xlarge 5,519.70 -> 4,360.20
21% build times linux32-shippable opt nightly taskcluster-c5.4xlarge 4,554.77 -> 3,607.38
20% build times linux64-shippable opt nightly taskcluster-c5d.4xlarge 4,186.38 -> 3,349.52
19% build times linux64-shippable opt nightly taskcluster-m4.4xlarge 5,238.65 -> 4,241.68
19% build times android-5-0-x86_64 opt taskcluster-m4.4xlarge 2,964.86 -> 2,415.81
18% build times linux32-shippable opt nightly taskcluster-c4.4xlarge 5,021.62 -> 4,093.09
18% build times linux64-shippable opt nightly taskcluster-m5.4xlarge 4,415.64 -> 3,611.96
18% build times linux64-shippable opt nightly taskcluster-c5.4xlarge 4,240.82 -> 3,484.93
17% build times linux64-shippable opt nightly taskcluster-c4.4xlarge 4,819.98 -> 3,995.83
14% build times windows2012-aarch64 opt aarch64 taskcluster-c4.4xlarge 4,472.41 -> 3,854.05
13% build times windows2012-aarch64 opt aarch64 taskcluster-c5.4xlarge 3,776.39 -> 3,276.29
13% build times osx-shippable opt nightly taskcluster-c5d.4xlarge 3,797.74 -> 3,302.49
12% build times osx-shippable opt nightly taskcluster-m4.4xlarge 4,773.35 -> 4,204.02
9% build times osx-shippable opt nightly taskcluster-c4.4xlarge 4,420.70 -> 4,007.08
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=22338
Description
•