Benjamin Bannier created MESOS-4271:
---------------------------------------
Summary: Consider replacing libtool with dolt to speed up build
Key: MESOS-4271
URL: https://issues.apache.org/jira/browse/MESOS-4271
Project: Mesos
Issue Type: Improvement
Reporter: Benjamin Bannier
Assignee: Benjamin Bannier
Priority: Minor
Mesos uses a pretty standard autotools setup for the build so that {{libtool}}
is used extensively to abstract away the aspects of library creation (both
compiling source files, and creating the libraries). For some versions of
{{libtool}} its invocation can add considerably to the overall build time.
Dolt provides a much more condensed implementation of {{libtool}}'s
functionality for modern platforms (<100 locs vs ~10 klocs), so that it can run
much faster. We should investigate whether activating dolt makes sense.
I tested dolt under OS X 10.10.5. I first primed ccache and then rebuilt
mesos-related objects,
{code}
./configure --disable-python --disable-java # benchmark mostly C & C++ file
compile and link
make check GTEST_FILTER='' # prime ccache
make mostlyclean # remove most mesos objects and
libs
make -jN check GTEST_FILTER='' # rebuild
{code}
|| | user [s] | real [s] | sys [s] ||
| make -j10 (dolt) | 42.8±0.1 | 54.3±0.2 | 34.1±0.2 |
| make -j10 (libtool) | 65.6±0.3 | 148.7±1.1 | 108.5±1.0 |
| make -j1 (dolt) | 76.9±0.3 | 45.5±0.1 | 27.1±0.1 |
| make -j1 (libtool) | 168.2±2.3 | 97.5±1.5 | 75.8±1.3 |
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)