Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

There was a period in the Software development process when we had 7-8 hours long nightly builds. This was an year ago. I started making changes and today we have builds happening in 2-2.5 hours.

The hardware:

Intel Xeon E5-2650 2.0 GHz CPU

Intel 500GB SSD

64 GB 1666MHz RAM

The Software we compile:

Code Size 11-12 GB - Native C++, C#, JAVA

One VS 2010 Solution with 250 projects - Release and Debug

One VS 2010 solution with 80 projects - Release and Debug

Four VS 2010 Solutions with around 20 projects each - Release and Debug

A large JAVA codebase JAVADOC

The process we follow:

1) Get code from Clearcase - 15-20 minutes

2) Compile the source - 1 hour

3) Generate Installshield Media- 8 installers - 15-20 minutes

4) Archive all the media and source code -10 minutes

5) Some more activities

The problem is that the customer seems to be really depressed by the 2-2.5 hour build times. I have iteratively brought down the build times from 7-8 hours to 2-2.5 hours, parallelizing as much as possible. I see I can reduce another 10-15 minutes if i work really hard for around another 20-25 hours. But anything beyond that seems unrealistic.

The bottlenecks are none. That is, no hardware element seems to be under any pressure. We have more than 1,50,000 files involved in the build. This seems to be holding the SSD back. The Reads/Writes are slower than the specified value.

I feel any further reduction in build times can be achieved only if we restructure the code base. But the customer feels that I am incompetent and does not bother about my suggestions. He wants to hire some consultant to figure out the issue.

Please let me know the right way to solve this issue.

share|improve this question

closed as too localized by Canadian Luke, Nifle, Everett, 8088, Dave M Mar 10 '13 at 20:09

This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer 1

I suggest you use performance monitor to do a memory/CPU/IO profile of the build process and see what the bottle neck is.

You can try loading all sources in to a RAM disk. However, I suspect with that large amount of RAM, Windows is caching most of your source in memory anyways. But a RAM disk could save you the time having to write and then the source code to/from disk (at the cost of not being able to use those memory for compilation).

If you have SSD, a usual bottleneck is CPU, but I don't think that applies to your case.

Maybe also post to serverfalt. Those people are more experienced with large scale server-related stuff.

share|improve this answer
    
We don't allow cross site posting on the stack –  Canadian Luke Mar 10 '13 at 13:55

Not the answer you're looking for? Browse other questions tagged or ask your own question.