Important to know when building scalable .NET applications

By patrickwellink
September 16, 2004

All, Just to let you know below some more information on building scalable .NET applications

a performance killer is the CLR build mode being used.. almost every .net app runs in the “workstation build” mode instead of server build.  (even microsoft apps like reporting server)

The difference is that besides the Garbage Collection impact, the workstation mode dll will only use 1.5 – 2 cpu’s versus all available 8,16 or 32 cpu’s

basically blocking serious throughput. (we have seen apps that after we forced it to run in server mode, the throughput went up by a factor 3x..)

Easy check to see in what mode it runs, is to check which dll the app is using :
when it runs in the workstation CLR mode , it is recognisable by the usage of MSCORWKS.DLL , the server clr uses MSCORSVR.DLL.

( A utility like – Process Explorer will show it quickly and also which threads a truly doing some work within the app)

click here to see how to enable Server Build mode

Click here to see how this setting affects the number of processors

Comments: 1

  1. Ernst says:

    Hmmm… a lot of contradictory info on this topic.

    Why does the article, posted by Erwyn, mention the MSDN article from March 01 in which the CLR is explicitly hosted by an unmanaged host?

    How can this article say that ASP.NET always hosts the server GC automatically when in other articles it is said that the workstation GC is loaded when only 1 CPU is available?

Comments are closed.

  • Recent Posts
  • Recent Comments
  • Archives
  • Categories
  • Meta