超线程技术的回归成为了Nehalem架构处理器的一大亮点。在多核处理器大行其道的今天,超线程技术不仅帮助芯片企业降低了生产成本,还将多线程性能发挥到了极致。进一步提高了处理器的运算效率,不能不说这是一次技术上的突破。但即便是多线程应用已经非常广泛的今天,仍然有不少仅支持单线程计算的应用程序存在。而超线程技术在这些应用程序上反而帮了倒忙。今天我们就从应用层面入手,为大家找出超线程技术扼杀的受害者......
在开始我们的测试前,首先了解一下Intel超线程技术,以及为何在Nehalem系列处理器中引入超线程技术。
超线程技术历史
超线程,早在2002年Intel便已经推出了这一技术,并且广泛的在奔腾4处理器中大规模应用。据当时的Intel官方资料,采用了超线程技术的奔腾4处理器可以比原产品效能提升10%-15%左右,可见Intel对超线程技术的运用是信心满满的。
但是事实却出乎Intel的意料。首先是来自操作系统端的问题,当时微软已经发布了Windows 2000系统,然而该系统并没有加入对超线程技术的支持,虽然后来出现的Windows XP系统加入了对该技术的支持,但也最终因为应用软件端对超线程技术的优化较少而作罢。另一个问题是来自于Intel自身的奔腾4处理器。基于NetBurst架构的奔腾4处理器由于过分的追求高主频加长了流水线设计,这导致了处理器的主频虽然达到了3GHz以上,却并没有提供3GHz主频相等的性能。由于过高的流水线已经造成数据运算错误率提高,在加上超线程技术的双核模拟容易让CPU在运算时命中失败,且对带宽的惊人需求。超线程技术不但没为处理器带来更高的执行效率,反而在某些情况下降低了奔腾4处理器的性能。所以说超线程技术虽然是一个非常先进且使用的概念,但在那个时代并不适合。
早在奔腾4时代Intel就加入了HT超线程技术
进入酷睿2时代后,由于内存带宽没有获得突飞猛进,而且酷睿2处理器的短流水设计并不适合超线程技术,因此新一代的酷睿架构处理器也就取消了超线程这一概念。
随着技术的进步,Intel已经进入了45nm工艺和Nehalem架构时代,在最新的Nehalem Core i7处理中,由于对DDR3内存控制器的整合,同时引入了三通道内存技术,内存带宽得到了质的飞跃,QPI总线的引入也令处理器的带宽大幅提升。这为超线程技术的回归提供了契机,于是乎Intel在酷睿i7系列以及未来的双核酷睿i5处理器中加入了超线程技术。
此外,新一代操作系统的推出也给多线程处理器提供了施展拳脚的机会,而3D游戏以及众多的应用软件也针对多线程进行了优化,可以说超线程技术在此时回归时绝对的最佳时机。
● Nehalem超线程技术细节
超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。
Nehalem架构采用的为同步多线程技术(Simultaneous Multi-Threading,SMT)。基于2路设计,即每颗核心可以同时执行2个线程。在多任务情况下可以有效提升性能,采用这种模拟的逻辑运算核心绝对比直接增加一颗物理运算核心成本低。
超线程技术让酷睿i7在设备管理器中被识别为8个核心
超线程技术的应用不仅需要指令集方面的帮助,同时也需要消耗一部分晶体管以在硬件上提升处理器运算效率。推测这一晶体管的数目大概为数百万个,但具体数量我们现在还不得而知。
需要指出的是,超线程技术虽然让处理器实现了线程数量翻倍的目的,但它并不像两个物理核心,每个核心都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能,所以处理器的性能并没有达到翻倍的效果。这一点还需要广大的用户群进一步了解。
【每日焦点】节省700元 SSD+USB3.0学生配置详测