Changes to the Machine.config file
- Access the machine.config file at the following location: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config
- 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.