August 26, 2012 at 2:16 am
When SQL Server runs on a computer with more than one microprocessor or CPU, it detects the best degree of parallelism, that is, the number of processors employed to run a single statement, for each parallel plan execution.
We have a box with 2 CPUs 4 Cores showing 8 logical processors, so , i am not sure how many CPUs for this box, 2 or 8 ?
ddfg
August 26, 2012 at 4:38 am
8. It's the number visible in task manager in Windows (unless you've configured SQL to use fewer processors)
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
August 30, 2012 at 2:51 pm
2 physical, 8 logical. We can tell the # of each from SQL...
-- cpu overview
SELECT osi.cpu_count AS LogicalCpuCount,
osi.hyperthread_ratio AS HyperthreadCoreRatio,
osi.cpu_count / osi.hyperthread_ratio AS PhysicalCpuCount,
(
SELECT COUNT(*)
FROM sys.dm_os_schedulers
WHERE scheduler_id < osi.cpu_count
AND is_online = 1
) AS LogicalCpuOnline
FROM sys.dm_os_sys_info osi;
...however not whether the logical CPUs are from multiple cores or from Hyperthreading. In your case you have 2 physical CPUs with 4 cores each and all SQL Server cares about is the logical CPUs when it comes to parallelizing queries, i.e. 8.
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato
Viewing 3 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic. Login to reply