Sunday, March 11, 2012

CPU/Core Prio. on SQL Server Express Instance?

Hi,
I am currently using a single SQL Server Express Instance on a Core 2 Duo
box.
I know that the Express version is limited to use 1 CPU/Core.
I now want to setup a second SQL Server Express instance for unrelated
purposes.
Is it possible to give one instance Core 0 prio, and the Second the Core 1
prio, or do they ALWAYS (MUST/ONLY) use Core 0?
Also, if I don't set it specifically will Windows manage it properly?
I guess my main question in detail is:
Is the Express version build in such a way that it will always use the first
core/cpu regardless how many there are? For example, if I have 3 instances
running, would they all fight for cycles on the first core/cpu?
If not, do I have to do/set something to make it work properly?
Thanks for any Info. on this!
Regards,
FrankExpress will only create one scheduler. A scheduler is by default not bound to a particular core, it
can "float" between the cores. However, there is no guarantee that your two express instances will
always be on different cores.
However, you can use sp_configure and the "affinity mask" option to specify that instance it is tied
to core 0 and instance 2 is tied to core 1. This way you've configured the two instances to use
different cores.
--
Tibor Karaszi, SQL Server MVP
http://www.karaszi.com/sqlserver/default.asp
http://sqlblog.com/blogs/tibor_karaszi
"Frank Osterberg" <raven7370@.yahoo.com> wrote in message
news:uVFYNK6dIHA.748@.TK2MSFTNGP04.phx.gbl...
> Hi,
> I am currently using a single SQL Server Express Instance on a Core 2 Duo box.
> I know that the Express version is limited to use 1 CPU/Core.
> I now want to setup a second SQL Server Express instance for unrelated purposes.
> Is it possible to give one instance Core 0 prio, and the Second the Core 1 prio, or do they ALWAYS
> (MUST/ONLY) use Core 0?
> Also, if I don't set it specifically will Windows manage it properly?
> I guess my main question in detail is:
> Is the Express version build in such a way that it will always use the first core/cpu regardless
> how many there are? For example, if I have 3 instances running, would they all fight for cycles on
> the first core/cpu?
> If not, do I have to do/set something to make it work properly?
> Thanks for any Info. on this!
> Regards,
> Frank
>|||> Also, if I don't set it specifically will Windows manage it properly?
To add on to Tibor's response, the OS can schedule work on any available
core when the SQL Server affinity mask is not set. You do not need to do
anything special to make this happen.
--
Hope this helps.
Dan Guzman
SQL Server MVP
http://weblogs.sqlteam.com/dang/
"Frank Osterberg" <raven7370@.yahoo.com> wrote in message
news:uVFYNK6dIHA.748@.TK2MSFTNGP04.phx.gbl...
> Hi,
> I am currently using a single SQL Server Express Instance on a Core 2 Duo
> box.
> I know that the Express version is limited to use 1 CPU/Core.
> I now want to setup a second SQL Server Express instance for unrelated
> purposes.
> Is it possible to give one instance Core 0 prio, and the Second the Core 1
> prio, or do they ALWAYS (MUST/ONLY) use Core 0?
> Also, if I don't set it specifically will Windows manage it properly?
> I guess my main question in detail is:
> Is the Express version build in such a way that it will always use the
> first core/cpu regardless how many there are? For example, if I have 3
> instances running, would they all fight for cycles on the first core/cpu?
> If not, do I have to do/set something to make it work properly?
> Thanks for any Info. on this!
> Regards,
> Frank
>|||Great! Thank you very much!!!
"Tibor Karaszi" <tibor_please.no.email_karaszi@.hotmail.nomail.com> schrieb
im Newsbeitrag news:eI1NqL7dIHA.4728@.TK2MSFTNGP03.phx.gbl...
> Express will only create one scheduler. A scheduler is by default not
> bound to a particular core, it can "float" between the cores. However,
> there is no guarantee that your two express instances will always be on
> different cores.
> However, you can use sp_configure and the "affinity mask" option to
> specify that instance it is tied to core 0 and instance 2 is tied to core
> 1. This way you've configured the two instances to use different cores.
> --
> Tibor Karaszi, SQL Server MVP
> http://www.karaszi.com/sqlserver/default.asp
> http://sqlblog.com/blogs/tibor_karaszi
>
> "Frank Osterberg" <raven7370@.yahoo.com> wrote in message
> news:uVFYNK6dIHA.748@.TK2MSFTNGP04.phx.gbl...
>> Hi,
>> I am currently using a single SQL Server Express Instance on a Core 2 Duo
>> box.
>> I know that the Express version is limited to use 1 CPU/Core.
>> I now want to setup a second SQL Server Express instance for unrelated
>> purposes.
>> Is it possible to give one instance Core 0 prio, and the Second the Core
>> 1 prio, or do they ALWAYS (MUST/ONLY) use Core 0?
>> Also, if I don't set it specifically will Windows manage it properly?
>> I guess my main question in detail is:
>> Is the Express version build in such a way that it will always use the
>> first core/cpu regardless how many there are? For example, if I have 3
>> instances running, would they all fight for cycles on the first core/cpu?
>> If not, do I have to do/set something to make it work properly?
>> Thanks for any Info. on this!
>> Regards,
>> Frank
>|||Ok, i was hoping it would be like that. Thank you!!!
"Dan Guzman" <guzmanda@.nospam-online.sbcglobal.net> schrieb im Newsbeitrag
news:D1D2B4EC-1D77-4D1E-941C-9E2E0F985F8C@.microsoft.com...
>> Also, if I don't set it specifically will Windows manage it properly?
> To add on to Tibor's response, the OS can schedule work on any available
> core when the SQL Server affinity mask is not set. You do not need to do
> anything special to make this happen.
> --
> Hope this helps.
> Dan Guzman
> SQL Server MVP
> http://weblogs.sqlteam.com/dang/
> "Frank Osterberg" <raven7370@.yahoo.com> wrote in message
> news:uVFYNK6dIHA.748@.TK2MSFTNGP04.phx.gbl...
>> Hi,
>> I am currently using a single SQL Server Express Instance on a Core 2 Duo
>> box.
>> I know that the Express version is limited to use 1 CPU/Core.
>> I now want to setup a second SQL Server Express instance for unrelated
>> purposes.
>> Is it possible to give one instance Core 0 prio, and the Second the Core
>> 1 prio, or do they ALWAYS (MUST/ONLY) use Core 0?
>> Also, if I don't set it specifically will Windows manage it properly?
>> I guess my main question in detail is:
>> Is the Express version build in such a way that it will always use the
>> first core/cpu regardless how many there are? For example, if I have 3
>> instances running, would they all fight for cycles on the first core/cpu?
>> If not, do I have to do/set something to make it work properly?
>> Thanks for any Info. on this!
>> Regards,
>> Frank
>

No comments:

Post a Comment