473,327 Members | 1,930 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,327 software developers and data experts.

Non Incremental build in CSharp + single threaded compiler

I work on a reasonably large project (if yours is bigger, please tell
me just how big) and am wondering how other people are partitioning
their assemblies/dealing with slow build times?

Our masterfiles assembly (which contains essentially just reference
file business objects) is currently 6Mb in size, and changing one line
of code causes a complete recompile.

I noticed older versions of csc.exe supported the /incremental build
option.
Why would this have been removed? It seems like the perfect solution
to really slow builds.

Is there also any reason why the compiler is not multithreaded? I have
a quad core machine that is currently using a whopping 25% cpu
utilisation.............

I watched a video the other day espousing Vista's new features, and a
Microsoft engineer said that Intel would be releasing a 60 core
machine in the next 5 years.

Does this mean I will get a 1.5% cpu utilisation when compiling in 5
years time? Or will Orcas come to the rescue?

Mar 16 '07 #1
2 1966
Br***************@gmail.com wrote:
I work on a reasonably large project (if yours is bigger, please tell
me just how big) and am wondering how other people are partitioning
their assemblies/dealing with slow build times?

Our masterfiles assembly (which contains essentially just reference
file business objects) is currently 6Mb in size, and changing one line
of code causes a complete recompile.
Have you considered splitting it up ?
Is there also any reason why the compiler is not multithreaded? I have
a quad core machine that is currently using a whopping 25% cpu
utilisation.............
How is your disk ?

(compilers are often IO intensive)

Arne
Mar 16 '07 #2
Brett,

I think that you bring up a greater question that software developers
are going to face in the future. Considering that processing power is not
going to increase in the form of faster processors, but rather, more
processors, programs will have to take this into consideration in order to
gain performance benefits.

As for why the incremental swich was taken out, I really can't say.

I also can't say if the C# compiler will be multi-threaded in the
future. However, if an MS engineer noted that Intel will be building chips
with 60 cores in five years, I would say that MS is aware of the point that
I brought up above, and that they will be coding in the future with that in
mind.

For the present, you might want to consider building sections of your
project into modules (using the /target:module switch) and then combining
them into one assembly using the assembly linker (al.exe).

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

<Br***************@gmail.comwrote in message
news:11**********************@n59g2000hsh.googlegr oups.com...
>I work on a reasonably large project (if yours is bigger, please tell
me just how big) and am wondering how other people are partitioning
their assemblies/dealing with slow build times?

Our masterfiles assembly (which contains essentially just reference
file business objects) is currently 6Mb in size, and changing one line
of code causes a complete recompile.

I noticed older versions of csc.exe supported the /incremental build
option.
Why would this have been removed? It seems like the perfect solution
to really slow builds.

Is there also any reason why the compiler is not multithreaded? I have
a quad core machine that is currently using a whopping 25% cpu
utilisation.............

I watched a video the other day espousing Vista's new features, and a
Microsoft engineer said that Intel would be releasing a 60 core
machine in the next 5 years.

Does this mean I will get a 1.5% cpu utilisation when compiling in 5
years time? Or will Orcas come to the rescue?

Mar 19 '07 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Thorsten Ottosen | last post by:
Dear all, I work on a major system written in C# in visual studio 2003. Our solution has 10+ projects and all projects are compiled with /incremental. In a C++ world, non-incremental builds...
0
by: Rudy Ray Moore | last post by:
I've been having trouble getting incremental linking to work under Visual C++ .net 2003 7.1 for my multi-project workspace. Ronald Laeremans and Carl Daniel (and a few others) helped me figure it...
3
by: Alex Shturm | last post by:
Hi, I am trying to activate incremental link using VC7 (.NET 2003) on a pretty big project (executable size is more than 100Mb, and it gets linked from several dozen of libraries and object...
6
by: rh | last post by:
Hi, I'd like to add an incremental search to my windows form DataGrid that works like the one used in Windows Explorer. In Windows Explorer, when you type a character it jumps to the first item...
10
by: Brian Parker | last post by:
I inherited a C++ DLL that I need to remotely call multiple times asynchronously. What I have developed is: CSharp web application that makes asynchronous calls to a CSharp Web Service. The...
0
by: miles1000 | last post by:
Hello, I've noticed \INCREMENTAL build option has been removed in .NET 2005. I want to make an incremental build for my solution. My solution includes projects written in c#, some of the...
1
yabansu
by: yabansu | last post by:
Hi all, I implemented a basic client application. It communicates with server and works properly. Building processes succeed just by giving the following warning: LINK : D:\DOC\Visual Studio...
8
by: Bern McCarty | last post by:
We have a large mixed dll that I can never seem to get to link incrementally. Below is the console output. For simplicity I've eliminated some stuff that we normally do when we really link this...
35
by: mwelsh1118 | last post by:
Why doesn't C# allow incremental compilation like Java? Specifically, in Java I can compile single .java files in isolation. The resulting individual .class files can be grouped into .jar files....
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.