基本简介
通过超线程技术,英特尔成为第一家实现在一个实体
处理器中,提供两个逻辑线程的公司。之后的
Pentium D纵使不
支持超线程技术,但就集成了两个实体核心,所以仍会见到两个逻辑线程。超线程的未来发展,是提升处理器的逻辑线程,英特尔有计划将8核心的处理器,加以配合
超线程技术,使之成为16个逻辑线程的产品。
英特尔表示,
超线程技术让(P4)处理器增加5%的裸晶面积,就可以换来15%~30%的效能提升。但实际上,在某些程序或未对多线程编译的程序而言,超线程反而会降低效能。除此之外,超线程技术亦要操作系统的配合,普通支持多处理器技术的系统亦未必能充分发挥该技术。例如
Windows 2000,英特尔并不鼓励使用者在此系统中利用超线程。原先不支持
多核心的
Windows XPHome Edition却
支持超线程技术。
工作原理
尽管提高CPU的
时钟频率和增加缓存容量后的确可以改善性能,但这样的CPU性能提高在技术上存在较大的难度。实际上在应用中基于很多原因,CPU的执行单元都没有被充分使用。如果CPU不能正常读取数据(总线/内存的瓶颈),其执行单元利用率会明显下降。另外就是目前大
多数执行线程缺乏ILP(Instruction-Level Parallelism,指令级别并行)支持。这些都造成了目前CPU的性能没有得到全部的发挥。因此,Intel则采用另一个思路去提高CPU的性能, 让CPU可以同时执行多重线程,就能够让CPU发挥更大效率,即所谓“超线程(
Hyper-Threading,简称“HT”)”技术。
超线程技术就是利用特殊的硬件指令,把一个物理内核模拟成两个逻辑内核,让单个
处理器都能使用线程级
并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行速度。
采用超线程即是可在同一时间里,应用程序可以使用芯片的不同部分。虽然
单线程芯片每秒钟能够处理成千上万条指令,但是在任一时刻只能够对一条线程进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。
超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资 源,理论上要像两颗CPU一样在同一时间执行两个线程,P4处理器需要多加入一个Logical CPU Pointer(逻辑处理单元)。因此新一代的P4 HT的die的面积比以往的P4增大了5%。而其余部分如ALU(整数运算单元)、FPU(浮点运算单元)、L2 Cache(二级缓存)则保持不变,这些部分是被分享的。
虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。
技术优点
1.
超线程技术的优势在于同时进行多任务
批处理工作,尽管现在
支持超线程技术的软件不多,也只有少数的软件可以享受到由超线程技术带来的性能提升,但是这符合今后软件等技术的发展方向,今后更多的软件将受益于超线程技术。
2.从目前来看,部分客户可以发觉在运行某些特定软件时,超线程技术让系统有了30%的性能提升,为超线程技术优化的软件都能够享受到超线程技术的好处。
3.客户同时运行两个以上的软件时候,将可以明显的感受到这两个软件的性能都得到提升相比关闭超线程技术的情况下都有很大的提升,超线程技术的效率优势只有在多任务操作时候才能得到发挥。
4.目前
支持超线程技术的Windows XP操作系统,其中的很多系统软件都已经针对超线程技术优化过,因此在使用Windows 操作系统的时候可以很好的享受到超线程技术带来好处。
技术缺点
本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/6625778.html
,如需转载请自行联系原作者