我有两台运行 SQL Server 的服务器。
据我所知,SQL Server 2008 R2 Express 应该只使用一个内核。
SQL Server 2012 Developer 版本应该使用全部 8 个内核。
但是,如果我在 SQL Server 2008 R2 Express 上的 SQL 查询中运行以下命令,它会显示 4 个内核。
select scheduler_id, cpu_id, status, is_online
from sys.dm_os_schedulers
where status = 'VISIBLE ONLINE'
我是否使用正确的命令来衡量使用情况?
Express 版受限于 1 个处理器,而不是 1 个核心:
SQL Server 支持指定数量的处理器套接字乘以每个套接字中的逻辑 CPU 数量。例如,出于此表的目的,以下处理器被视为单个处理器:每个插槽具有 2 个逻辑 CPU 的单核超线程处理器。具有 2 个逻辑 CPU 的双核处理器。具有 4 个逻辑 CPU 的四核处理器。SQL Server 是按处理器 插槽许可的,而不是按逻辑 CPU许可的。