我已经读过,超线程在数据库方面是一个“性能杀手”。 但是,我读的没有说明哪个 CPU。 此外,它大多表明I / O被“削减到<10%性能”。
这在逻辑上是没有意义的,因为I / O主要是控制器和磁盘的function,而不是CPU。 但是从来没有人说错误是有道理的。
我所读到的还指出,SQL Server 可以将两个并行查询操作放到1个逻辑核心(2个线程)上,从而降低性能。 我很难相信SQL Server的架构师会做出如此明显的错误估计。
有没有人有关于当代CPU超线程如何影响我提到的任何一个RDBMS的数据?
我所读到的还指出,SQL Server可以将两个并行查询操作放到1个逻辑核心(2个线程)上,从而降低性能。 我很难相信SQL Server的架构师会做出如此明显的错误估计。
这不是一个SQL Server问题。 超线程虚拟内核看起来与操作系统的真正核心完全相同 – 甚至是BIOS。 你可以指定一个处理器的进程,但是调度器根本不知道处理器的哪一个核心是真实的,哪一个是超线程的,特别是因为它们都是真实的,只是共享一定的资源。 超线程是由英特尔开发的,通过在两个内核之间共享某些资源来允许“更便宜的双核处理器,而不是真正的双核处理器”,但代价是程序根本不知道这一点。
较新的Intel CPU在硬件方面更好,所以Hyperr-Threading不再是当前SQL Server的瓶颈 – 运行在CURRENT intel芯片上。 这是因为英特尔主要是让Hyperthreading更好。
http://www.microsoft.com/whdc/system/sysperf/Perf_tun_srv-R2.mspx是当前的2008 R2调整指南。
http://ozamora.com/2010/09/sql-server-2008-r2-and-nehalem-processors/有一些与Nehalem和SQL Server的东西。