Sergiy Belozorov
Sergiy Belozorov

Reputation: 6084

How to speed up Visual Studio 2008 for many-project solutions?

I am aware that there are a couple of questions that look similar to mine, e.g. here, here, here or here. Yet none of these really answer my question. Here it goes.

I am building a modified version of a Chromium browser in VS2008 (mostly written in C++). It has 500 projects in one solution with plenty of dependencies between them. There are generally two problems:

Here is some info about my software and hardware:

Here are some things that I have noticed:

Upvotes: 3

Views: 1221

Answers (2)

Sergiy Belozorov
Sergiy Belozorov

Reputation: 6084

I have switched to the component build mode for Chromium project, which reduced the number of files that need to be linked. Component build mode creates a set of smaller DLLs rather than a set of static libraries that are then linked into huge chrome.dll. Also I am using incremental linking a lot, which makes linking even faster. Finally linking for the second and subsequent times gets faster since necessary files are already cached in the memory and disk access is unnecessary. Thus when working incrementally and linking often, I get to as low as 15 seconds for linking of webkit.dll which is where I mostly change the code.

As for the execution it has same behavior as linking - it runs slow only for the first time and with every subsequent run it gets faster and faster until it takes less than 3-5 seconds to start the browser and load all symbols. Windows is caching files that are accessed most often into the memory.

Upvotes: 0

olegvs
olegvs

Reputation: 341

while looking up information on VS linker I came across this page:

http://msdn.microsoft.com/en-us/library/whs4y2dc%28v=vs.80%29.aspx

Also take a look the two additional topics on that page:

  • Faster Builds and Smaller Header Files
  • Excluding Files When Dependency Checking

Upvotes: 1

Related Questions