原生四核Core i7有八个逻辑内核
超线程技术(Hyper-Threading),最早出现在130nm的Pentium 4上,超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。超线程技术使得Pentium 4单核CPU也拥有较出色的多任务性能,现在通过改进后的超线程技术再次回归到Core i7处理器上,新命名为同步多线程技术(Simultaneous Multi-Threading,SMT)。
同步多线程(Simultaneous Multi-Threading,SMT)是2-way的,每核心可以同时执行2个线程。对于执行引擎来说,在多线程任务的情况下,就可以掩盖单个线程的延迟。SMT功能的好处是只需要消耗很小的核心面积代价,就可以在多任务的情况下提供显著的性能提升,比起完全再添加一个物理核心来说要划算得多。比起Pentium 4的超线程技术(Hyper-Threading),Core i7的优势是有更大的缓存和更大的内存带宽,这样就更能够有效的发挥多线程的作用。按照INTEL的说法,Nehalem的SMT可以在增加很少能耗的情况下,让性能提升20-30%。
为什么Core 2没有使用SMT?很显然,它是可以做到的。SMT是在节省电力的基础上增加了性能,而且软件支持的基础建设也早就有了。有2个可能的原因:一是Core 2可能没有足够的内存带宽和CPU内部带宽来利用SMT获得优势。通常,SMT能够提升内存级并行(memory level parallelism,MLP),但是对于内存带宽已经成为瓶颈的系统则是个麻烦。而更有可能的原因则是SMT的设计、生效等是很麻烦的,而当初设计SMT是由INTEL的Hillsboro小组主持,而并非是Haifa小组(Core 2是由这个小组负责的)。这样Core 2不使用SMT就避免了冒险。