Hi,
We are using a quad Xeon with hyperthreading. Windows 2000 and SQL Server "see" 8 processors. We have scheduled SQL to only use CPUs 0,1,2,3. The server is a dedicated database server. Has anyone done much work with hyperthreading? Is our approach sensible?
Ken"Ken Ng" <anonymous@.discussions.microsoft.com> wrote in message
news:72043C98-B317-4CA2-A97D-36AC17A5ABA0@.microsoft.com...
> Hi,
> We are using a quad Xeon with hyperthreading. Windows 2000 and SQL Server
"see" 8 processors. We have scheduled SQL to only use CPUs 0,1,2,3. The
server is a dedicated database server. Has anyone done much work with
hyperthreading? Is our approach sensible?
>
This will essentially disable hyperthreading for SQL server since CPUs
0,1,2,3 are the first logical processesors on each chip. So the system will
run basically like a non-hyperthreading 4-way server.
But you should get better performance if you let SQL Server schedule threads
on all 8 logical processors. The point of HT is that scheduling 2 threads
on each physical processor allows a higher utilization of internal CPU
resources, and results in a higher throughput than switching between the 2
threads.
David|||i have not found anything in SQL Server that benefits from
HT in a useful manner.
however, HT and parallel execution plans may in certain
circumstances have potentially crippling effect.
i suggest that HT be disabled unless you have conducted a
reasonably comphrensive test on whether there are any ill
effects
>--Original Message--
>Hi,
>We are using a quad Xeon with hyperthreading. Windows
2000 and SQL Server "see" 8 processors. We have scheduled
SQL to only use CPUs 0,1,2,3. The server is a dedicated
database server. Has anyone done much work with
hyperthreading? Is our approach sensible?
>Ken
>.
>|||In my tests performance with HT switched ON was about 15%
WORSE than with HT switched OFF. Physical processor is a
physical processor and when SQL Server creates parallel
execution plan and is trying to run simultaneously two
subqueries on the same physical processor, it creates a
bottleneck.
Cheers,
Alex|||I have no evidence for this, but if parallellism is not used (for
example just OLTP), then I expect a HT system to perform 15% better than
the same system with HT disabled. If parallellism is used (sometimes),
then I guess it is better to turn off HT.
Gert-Jan
joe chang wrote:
> i have not found anything in SQL Server that benefits from
> HT in a useful manner.
> however, HT and parallel execution plans may in certain
> circumstances have potentially crippling effect.
> i suggest that HT be disabled unless you have conducted a
> reasonably comphrensive test on whether there are any ill
> effects
> >--Original Message--
> >Hi,
> >
> >We are using a quad Xeon with hyperthreading. Windows
> 2000 and SQL Server "see" 8 processors. We have scheduled
> SQL to only use CPUs 0,1,2,3. The server is a dedicated
> database server. Has anyone done much work with
> hyperthreading? Is our approach sensible?
> >
> >Ken
> >.
> >|||> This will essentially disable hyperthreading for SQL server since CPUs
> 0,1,2,3 are the first logical processesors on each chip. So the system will
> run basically like a non-hyperthreading 4-way server.
However, the OS can still use the other 4 logical processors.
--
Tibor Karaszi, SQL Server MVP
Archive at: http://groups.google.com/groups?oi=djq&as_ugroup=microsoft.public.sqlserver
"David Browne" <davidbaxterbrowne no potted meat@.hotmail.com> wrote in message
news:e1d$qQPuDHA.2448@.TK2MSFTNGP09.phx.gbl...
> "Ken Ng" <anonymous@.discussions.microsoft.com> wrote in message
> news:72043C98-B317-4CA2-A97D-36AC17A5ABA0@.microsoft.com...
> > Hi,
> >
> > We are using a quad Xeon with hyperthreading. Windows 2000 and SQL Server
> "see" 8 processors. We have scheduled SQL to only use CPUs 0,1,2,3. The
> server is a dedicated database server. Has anyone done much work with
> hyperthreading? Is our approach sensible?
> >
> This will essentially disable hyperthreading for SQL server since CPUs
> 0,1,2,3 are the first logical processesors on each chip. So the system will
> run basically like a non-hyperthreading 4-way server.
> But you should get better performance if you let SQL Server schedule threads
> on all 8 logical processors. The point of HT is that scheduling 2 threads
> on each physical processor allows a higher utilization of internal CPU
> resources, and results in a higher throughput than switching between the 2
> threads.
> David
>|||Thanks for the replies folks. From the discussion I deduce that HT may not be that beneficial for SQL per se. In our case, by limiting SQL to CPU 0,1,2,3 we seem to be disabling HT for SQL but enabling the extra 4 (logical) processors i.e. CPU 4,5,6,7 to be used by the o/s. This seems to be a reasonable approach
Many Thank
Ken Ng
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment