64位的Windows7和Windows Server 2008 R2为了能够在一台机器上,支持超过64个逻辑CPU, 引入了Processor Group这个概念。Processor Group会把一些逻辑CPU编成一个组,但是一个组内的逻辑CPU总数不能超过64个。Windows 会将超过64个CPU(小于128)分成两组(比例随机不固定),操作系统随机地为每个进程分配一个Processor Group,而SQL Server 2008会调用GetSystemInfo(&siSysInfo)的办法来获取逻辑CPU个数,这样便会造成到机器超过64个逻辑CPU时,SQL Server2008无法使用所有的CPU,导致性能下降。

SQL Server 2008 R2可以识别256个逻辑CPU

解决方法:

1> 取消超线程,使逻辑CPU数量低于64

2> 升级到SQL Server 2008 R2

 

 

参考资料:http://blogs.msdn.com/b/apgcdsd/archive/2011/09/05/windows-2008-r2-sql-server-2008-cpu.aspx

相关文章:

  • 2022-12-23
  • 2022-02-03
  • 2022-12-23
  • 2021-09-25
  • 2021-07-13
  • 2022-12-23
  • 2022-03-03
  • 2021-09-22
猜你喜欢
  • 2021-04-14
  • 2021-07-16
  • 2022-01-19
  • 2021-11-27
  • 2021-05-29
  • 2021-04-08
相关资源
相似解决方案