We're working on pretty large middleware software, and it takes 10-20 minutes each time we need to re-build the whole solution in VS2008 (quad-core parallel build on a single machine). I've heard there are rather expensive VS extensions like Incredibuild that make use of other machines in your network (we have about 10 machines). Have you ever used or heard about those tools? Do they make the build process so faster and smarter to be worth the money? (e.g. re-use object files开发者_Go百科 that could be cached on different machines)
Thanks in advance
Well we had similar problems except that in our case it took over 40 minutes to build.
With Visual Studio 2008 we used Xoreax Incredibuild ( see Xoreax web site ) and it dramatically reduced the build time (i.e. to half the time or better). So I would say yes, such a tool can help. And, in my opinion it is not so expensive (i.e. between 250 and 500 USD per seat depending on extra options and there are some discounts for volume purchases).
Now we are at VS 2010 and at the time we upgraded there was no support for 2010 in Incredibuild so we rely on the VS2010 build. All developers have quad cores and the build in VS 2010 makes good use of that so the build times are acceptable. We also reviewed and improved our includes and made better use of precompiled headers and so on.
So you coud try Xoreax Incredibuild (they have a fully functional 30 days trial version that can be extended when it expires) to be able to determine if the price / benefit ratio is ok for your case, or revise and improve your includes and/or upgrade to VS2010 if you have multi core machines.
Agree with previous answer. We had similar experiences; build times do go down quite significantly. We first went with the simple Incredibuild setup; using spare capacity on other machines. The benefits were clear, but we recognized we could get even quicker builds by adding a dedicated build server (we do have far more developers, though - more than 100 clients - so YMMV)
As for the costs, it's quite likely that Incredibuild will increase your developer productivity by at least 1%.
Microsoft now has BuildXL, but you have to separately build the project file for it.
FastBuild is another option, but again, separate project format. msfastbuild can build Visual Studio projects with FastBuild, but... you have to adjust it for your build-chain.
Still at trying to get one of them running...
精彩评论