Re: Proposal for Mesos Build Improvements

2017-02-16 Thread Alexander Rojas
Actually, this is a policy I have never been a big fan of. In my experience just forward declaring as much as possible in the headers and only including in compilations units tend to have decent improvements in complication time, particularly files like `mesos.cpp` or `slave.cpp` which indirectl

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Neil Conway
On Wed, Feb 15, 2017 at 1:59 PM, Jeff Coffler wrote: > 3. Maintaining the correct includes is nice, but not at the cost of compiler > speed. Personally, I would invert these statements -- but until we know the cost of the redundant includes, probably not worth debating further. > 4. I totally d

RE: Proposal for Mesos Build Improvements

2017-02-15 Thread Jeff Coffler
numbers under my belt. From that, we can make intelligent decisions about where to go. /Jeff -Original Message----- From: Andy Schwartzmeyer [mailto:andsc...@microsoft.com.INVALID] Sent: Wednesday, February 15, 2017 1:31 PM To: dev Subject: Re: Proposal for Mesos Build Improvements Hi, I

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Andy Schwartzmeyer
with prototyping this? Thanks, -- Andy From: Benjamin Bannier Sent: Wednesday, February 15, 2017 12:26 PM To: dev Subject: Re: Proposal for Mesos Build Improvements Hi, > I wonder if we should instead use headers like: > > <- mesos_commo

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Benjamin Bannier
Hi, > I wonder if we should instead use headers like: > > <- mesos_common.h -> > #include > #include > #include > > <- xyz.cpp, which needs headers "b" and "d" -> > #include "mesos_common.h> > > #include > #include > > That way, the fact that "xyz.cpp" logically depends on (but not > or

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Vinod Kone
rformance enhancement as well. > > > > I'm working on getting some hard numbers for a subset of Mesos. Once we > have some hard comparisons with compiler performance (with and without > PCH), we can address this much more practically. > > > > /Jeff > > > >

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Neil Conway
hard numbers for a subset of Mesos. Once we have > some hard comparisons with compiler performance (with and without PCH), we > can address this much more practically. > > /Jeff > > > -Original Message- > From: Neil Conway [mailto:neil.con...@gmail.com] > Sen

RE: Proposal for Mesos Build Improvements

2017-02-15 Thread Jeff Coffler
, since it's only read once, the time savings is not diminished at all. /Jeff -Original Message- From: Alex Clemmer [mailto:clemmer.alexan...@gmail.com] Sent: Wednesday, February 15, 2017 11:24 AM To: dev Subject: Re: Proposal for Mesos Build Improvements Yes, that is right, PCHs

RE: Proposal for Mesos Build Improvements

2017-02-15 Thread Jeff Coffler
il.com] Sent: Wednesday, February 15, 2017 11:13 AM To: dev Subject: Re: Proposal for Mesos Build Improvements On Tue, Feb 14, 2017 at 11:28 AM, Jeff Coffler wrote: > For efficiency purposes, if a header file is included by 50% or more of the > source files, it should be included in the p

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Alex Clemmer
Yes, that is right, PCHs would probably introduce some additional dependencies for some object files, and if those PCHs become bloated over time, then you can expect this to be expressed as diminishing time savings. This does imply that maintaining PCHs will require at least some work. __ Trans

RE: Proposal for Mesos Build Improvements

2017-02-15 Thread Alex Clemmer
le, sometimes the implementation MUST be in header files. /Jeff -Original Message- From: Joris Van Remoortere [mailto:jo...@mesosphere.io] Sent: Wednesday, February 15, 2017 9:46 AM To: dev@mesos.apache.org Subject: Re: Proposal for Mesos Build Improvements However, the non-header-only

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Neil Conway
On Tue, Feb 14, 2017 at 11:28 AM, Jeff Coffler wrote: > For efficiency purposes, if a header file is included by 50% or more of the > source files, it should be included in the precompiled header. If a header is > included in fewer than 50% of the source files, then it can be separately > inclu

RE: Proposal for Mesos Build Improvements

2017-02-15 Thread Jeff Coffler
der files. /Jeff -Original Message- From: Joris Van Remoortere [mailto:jo...@mesosphere.io] Sent: Wednesday, February 15, 2017 9:46 AM To: dev@mesos.apache.org Subject: Re: Proposal for Mesos Build Improvements > > However, the non-header-only work won't do anything in a "c

Re: Proposal for Mesos Build Improvements

2017-02-15 Thread Joris Van Remoortere
st enough to take the sting out > of significant stout changes, but changing stout will still help the > incremental build cases regardless. > > Hope that clarifies, > > /Jeff > > -Original Message- > From: Neil Conway [mailto:neil.con...@gmail.com] > Sent: Tues

RE: Proposal for Mesos Build Improvements

2017-02-14 Thread Jeff Coffler
ging stout will still help the incremental build cases regardless. Hope that clarifies, /Jeff -Original Message- From: Neil Conway [mailto:neil.con...@gmail.com] Sent: Tuesday, February 14, 2017 11:45 AM To: dev Subject: Re: Proposal for Mesos Build Improvements I'm curious to hea

Re: Proposal for Mesos Build Improvements

2017-02-14 Thread Neil Conway
I'm curious to hear more about how using PCH compares with making stout a non-header-only library. Is PCH easier to implement, or is it expected to offer a more dramatic improvement in compile times? Would making both changes eventually make sense? Neil On Tue, Feb 14, 2017 at 11:28 AM, Jeff Coff

Re: Proposal for Mesos Build Improvements

2017-02-14 Thread Alex Clemmer
Just to add a bit of context, the history of the issue of build time is tracked in MESOS-1582[1], and most recently[2]. Speaking personally, I'm excited about _any_ progress in this area, because (1) the Windows build times are completely unbearable, and (2) because getting the build times down b

Proposal for Mesos Build Improvements

2017-02-14 Thread Jeff Coffler
Proposal For Build Improvements The Mesos build process is in dire need of some build infrastructure improvements. These improvements will improve speed and ease of work in particular components, and dramatically improve overall build time, especially in the Windows environment, but likely in t