Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an ASP.NET 4.5 web app running in IIS 7 and connecting to SQL Server 2008 R2 on the same machine. The database is very read intensive with the occasional heavy write burst. Currently we have a single CPU server but are planning to get a R720 Hex Core machine which has two sockets. Is there any benefit to getting a second CPU for the server and having IIS and SQL Server running on separate CPUs? How would you set this up to maximise usage of the hardware?

share|improve this question
up vote 0 down vote accepted

To any the question:

Any benefits: Yes.

If you pin the two processes to two different CPU's then both can make full use of the (2nd/3rd lvl) cache. That might be a bit faster. Two populated CPU sockets also yield more memory bandwidth.

Those are the advantages. However:

  1. However if both processes share a lot of data it which is now in different caches than it might be slower.
  2. Memory: You might not need the bandwidth. How large is the DB?
    Will it fit in the cache. (unlikely, if it was that small you would not ask questions).
    Will it fit in the RAM (extra performance of the RAM bandwidth will not be nice).
    Is it that large that most of it is IO-bound (disk). (Might be, esp. if you buy a server with half the goal of running this)...
  3. Needless to say, a second CPU will be more expensive. Both on purchase cost and on power used, cooling needed, ...

All of this is a very long winded way of saying maybe, it depends.

The only way to actually determine this is to measure your current bottlenecks.

share|improve this answer
Thank you. I know my current bottlenecks are disk and memory, so I'll go with a single CPU and get a second one as/when needed. – beon Nov 9 '12 at 1:06
When you get the second one make sure you get the same model and preferably the same CPU revision. (A different revision might work just fine, but some OS'ses -win8 and hence maybe server 2012- check for identical revisions and refuse to work if they differ.) – Hennes Nov 9 '12 at 1:11

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.