How to bind SQL Express to a particular CPU?
Since SQL Express only runs on one CPU, is there a way to bind SQL Express to a particular CPU, or SQL Express only runs on CPU0?
And in case of CPU hyperthreading, I assume that the CPU SQL Express running on will be a logical CPU, not a physical CPU, am I right?
[527 byte] By [
peterxz] at [2008-2-4]
You can read the KB article I wrote about how SQL Express uses CPUs to answer most your questions.
Binding to a specific processor is done with the affinity mask property, which you can learn about by reading http://msdn2.microsoft.com/en-us/library/ms187104.aspx. In general, I would recommend that you let Windows handle processor management, but if you feel you have a need to manage this independently, the functionality exists.
Regards,
Mike Wachal - SQL Express team
Thanks for the info. I can use the dynamic binding, although it would be nice that I can specify the cpu mask during instance installation stage.
This brings up another question, how the affinity mask works on different instances (different services / processes)? If I specify Instance #1 on CPU0, then instance #2 on CPU1, how does it work? It is said that SQL Express can only work on one CPU.
The CPU index refers to the logical CPU number, right?
Thanks,
Peter