I have been struggling with an IIS issue and can't seem to find any answers.
Basically here is the setup.
I have a Dell Server with 4 processors 10 cores each with hyper-threading enabled.
Giving me 80 logical cores. Server has Windows 2012 R2 Standard (IIS 8.5) installed and this creates two processor group as number of cores is more than 64.
IIS configuration is mostly default except for following.
- Start Mode - AlwaysRunning
- NUMA Node Afinity Mode - Hard
- Maximum worker processes - 0
Now from the above configuration I would expect a behaviour that 4 w3wp processes are created in a web garden and each process tied to one NUMA node. And all being used to server requests at the same time.
Here is what's happening. 4 processes are in fact being created automatically but only 2 of them are being used to server up requests and the other two sitting there idle.
Doesn't matter how much load there is on server these 2 idle processes remain the same and the two which are being used get overloaded.
All four processes are being created on correct NUMA nodes but only processes in Process Group 0 are being used. I don't have affinity mask enabled.