Page MenuHomeFreeBSD

Major improvement to build parallelism for googletest internal tests
ClosedPublic

Authored by arichardson on Oct 12 2020, 12:30 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Mar 9, 5:20 AM
Unknown Object (File)
Sat, Mar 9, 5:16 AM
Unknown Object (File)
Sat, Mar 9, 5:16 AM
Unknown Object (File)
Sat, Mar 9, 5:16 AM
Unknown Object (File)
Fri, Mar 8, 8:55 AM
Unknown Object (File)
Mon, Mar 4, 8:58 AM
Unknown Object (File)
Thu, Feb 29, 10:43 PM
Unknown Object (File)
Jan 31 2024, 10:12 AM
Subscribers

Details

Summary

Currently the googletest internal tests build after the matching library.
However, each of these is serialized at the top level makefile.
Additionally some of the tests (e.g. the gmock-matches-test) take up to
90 seconds to build with clang -O2. Having to wait for this test to
complete before continuing to the next directory seriously slows down the
parllelism of a -j32 build.
Before this change running make -C lib/googletest -j32 -s in buildenv
took 202 seconds, now it's 153 due to improved parallelism.

Test Plan

Still compiles, TESTSDIR still matches so this should not result in any functional change.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 34111
Build 31279: arc lint + arc unit

Event Timeline

arichardson created this revision.
lib/googletest/Makefile.inc
13 ↗(On Diff #78130)

same here.

lib/googletest/tests/gtest_main/Makefile
47

Ah that should not be part of the revision, will remove before committing.

This revision was not accepted when it landed; it landed in state Needs Review.Oct 19 2020, 7:51 PM
This revision was automatically updated to reflect the committed changes.