Page MenuHomeFreeBSD

Major improvement to build parallelism for googletest internal tests
ClosedPublic

Authored by arichardson on Oct 12 2020, 12:30 PM.

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

Repository
rS FreeBSD src repository - subversion
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

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

same here.

lib/googletest/tests/gtest_main/Makefile
47 ↗(On Diff #78130)

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.