Changes to the Machine.config file

  1. Access the machine.config file at the following location: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config
  2. Search for the <configuration>node.

The table below lists the values that must be added for systems with 4, 8 and 16 cores:

Field Values for 4 cores Values for 8 cores Values for 16 cores Details
# Processor 2 2 2 Number of processors in the system
# Cores 2 4 8 Number of cores per processor
# Total Cores 4 8 16 Total cores
Requests/Core 12 12 12 This is a constant value
maxWorkerThreads 100 100 100 Max allowed value for this attribute is 100
minWorkerThreads 50 50 50 Half of max allowed
maxIoThreads 100 100 100 Max allowed value for this attribute is 100
minIoThreads 50 50 50 Half of max allowed
minFreeThreads 352 704 1408 #Total Cores * 88
minLocalRequestFreeThreads 304 608 1216 #Total Cores * 76
connectionManagement, maxconnection 48 96 192 #Cores * Requests/Core

As an example, configuration for an 8 cores machine is mentioned below:

<configuration>
<system.web>
<processModel autoConfig="false" enable="true" minWorkerThreads="50" minIoThreads="50" maxWorkerThreads="100" maxIoThreads="100" />
<httpRuntime minFreeThreads="704" minLocalRequestFreeThreads="608"/>
</system.web>
<system.net>
<connectionManagement>
<add address="*" maxconnection="96"/>
</connectionManagement>
</system.net>
</configuration>
Note: For additional information, refer to http://support.microsoft.com/kb/821268.