views:

404

answers:

4

Are there any products that will decrease c++ build times? that can be used with msvc?

+13  A: 

If it has to be a product, look at Xoreax IncrediBuild, which distributes the build to machines on the network.

Other than that:

  • solid build machines. RAM as it fits, use fast separate disks.
  • Splitting into separate projects (DLLs, Libraries). They can build in parallel, too (use dual quad/core, and is easily bottlenecked by disk)
  • Intelligent use of headers, including precompiled headers. That's not easy, and often there are other stakeholders. PIMPL helps, too.
peterchen
+5  A: 

Usage of precompiled headers might decrease your compile time.

Serge
Generally true, though they may *increase* build times
Justin
A: 

Have you considered a shared build server? MSVC will run in a Terminal Server, and you can amortize the cost of CPUs, RAM and fast disks over the development team. As a side benefit, this Terminal Server can then also house the Version Control System, so checkouts are fast.

MSalters
A: 

Look at MPCL.

This is a plug-in for Microsoft Visual C++ 2005 and Visual C++2008, which allow to maximize the use of the CPU in order to minimize the compiling time of your project.

It compiles several .c / .cpp files of the same project in parallel in order to achieve it. This is specially usefull when you have a Dual core / Quad core / Multi core processor.

e40pud
Or you could just use the built in /MP switch: http://msdn.microsoft.com/en-us/library/bb385193.aspx
Eclipse