You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Till Toenshoff (JIRA)" <ji...@apache.org> on 2016/02/04 20:25:39 UTC
[jira] [Commented] (MESOS-4271) Consider replacing libtool with
dolt to speed up build
[ https://issues.apache.org/jira/browse/MESOS-4271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15132837#comment-15132837 ]
Till Toenshoff commented on MESOS-4271:
---------------------------------------
These are my results on OSX.
I was running a {{make check -j6}} after priming the ccache and a {{make mostlyclean}}.
libtool
------------------------
real 4m9.985s
user 17m34.419s
sys 2m40.675s
==============
dolt
------------------------
real 3m57.768s
user 16m53.857s
sys 1m23.916s
==============
So it seems to me that I am doing something wrong as I got far too many ccache misses (seeing clang still being active after priming).
Turned out my CCACHE cache-size was far too small for mesos - the default on my brew installation of CCACHE is 1gb.
Checking the size: {{ccache -s}}
Setting the size: {{ccache -M 20G}}
libtool
------------------------
real 0m38.956s
user 0m52.404s
sys 0m23.206s
==============
dolt
------------------------
real 0m38.485s
user 0m53.128s
sys 0m23.759s
==============
So now I can see, that I don't see a significant improvement - but actually a tiny increase in build time - but that is within the measurement variance.
[~bbannier]r what am I missing?
> 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
> Labels: build, mesosphere
>
> 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)