Cpu超线程到底有什么实际用途 超线程有什么用处


CPU超线程技术对游戏用处大吗?
虽然超线程技术是一个能够有效提升处理器性能的功能,但是在实际应用上却并没有让用户体验出使用上的差别 。10款游戏测试结果都显示关闭超线程后游戏帧数会高一点,不过差距非常的小,全部都在误差范围之内,基本上差距都可以忽略了,所以超线程技术基本对游戏性能的影响基本可以无视掉 。
实际上可以完全用得上8线程的游戏只有《地铁:最后的曙光》一款,不过这款游戏对显卡的要求非常高,瓶颈并不在CPU那里,开启超线程和关闭超线程完全没有区别 。
有六款游戏是4线程负载,分别是《使命召唤9:黑色行动2》、《英雄连2》、《孤岛危机3》、《尘埃3》、《古墓丽影9》、《魔兽世界》,这些游戏超线程技术基本对它们没什么影响,基本上四个虚拟核心都是没有负载的 。
三个游戏是只有双核心负载的,分别是《暗黑破坏神3》、《Dota2》和《坦克世界》,其中《Dota2》的CPU负载是非常低的,另外两个游戏都有个共同的特点,就是两个负载的核心中一个核心的负载是非常高的,几乎达到100%负载,而另一个负载核心只有50%左右的负载,所以这两款游戏对单核性能要求比较高,多线程反而没什么影响 。

超线程是什么意思?怎么应用它呢?应用它时软硬件配置应注意些什么?
分类:电脑/网络 >> 硬件
解析:
谈到超线程技术,我们先得了解什么是线程,什么是多线程 。对于计算机微处理器而言,程序只是一组编译过的机器代码,可以执行相关的数据计算与操作,这些代码由一条条的指令组成,每一个代码组就是一条线程 。
现有主流CPU为x86架构,每次只能执行一条线程,即单线程 。单CPU系统中,在执行指令的时候,CPU先找出相应指令所在的内存位置,执行下一条指令,再转换到另一个位置,在同一时间内CPU只能对应一个指令 。线程可以中断,并把中间结果暂存在另一个特殊位置(堆栈),不同的线程可以交叉运行,实现多任务,但每次运行的线程仍然仅有一条,千万不要把多任务和多线程混淆了 。
既然一个CPU是单线程,那么两个CPU自然就可以双线程啦,如此类推,就会出现四路、八路系统 。但双处理器系统的性能并不能达到单处理器的两倍,通常只有33%的性能增益 。
为了提高CPU的性能,厂商通常采用增加工作频率和缓存容量的方法来提升速度,但这是治标不治本的方法,CPU只提高了速度,其内在潜力依然未能完全发挥,CPU的执行单元没有被充分利用,于是设计者就在CPU中加入两个逻辑处理单元,同时管理CPU的全部资源,直接提高CPU内核的工作效率 。
超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,从而兼容多线程操作系统和软件,提高处理器的性能 。操作系统或者应用软件的多线程可以同时运行于一个HTT处理器上,两个逻辑处理器共享一组处理器执行单元,并行完成加、乘、负载等操作 。
如何提升工作效率
那么,超线程技术是如何提高CPU性能的呢?
我们知道,CPU由很多执行单元组成(如整数运算单元、浮点运算单元和存储单元),这些执行单元无法同时工作,大多数时间有一半执行单元是处于空闲状态 。例如,MS Office等商业软件主要使用整数运算单元和读写/存储单元,几乎不涉及浮点运算单元,3D渲染软件主要使用浮点运算单元,很少涉及整数运算单元,很明显,这种设计造成了很大的浪费 。如P4处理器内部有7个执行单元,每个时钟周期内,约有2个执行单元工作,它们共执行两次操作,那么,其他5个单元完全没有用到 。
为了解决这个问题,高端电脑采用了ILP(Instruction Level Paralleli ***,指令级平行运算)技术,可以同时执行多条指令,提高单CPU的效率 。而x86架构只能让多个CPU来执行不同的线程,不过硬件成本增加了不少,于是超线程技术处理器的出现正式兼容两者的优势 。
传统处理器和支持超线程处理器在指令执行上的对比,参见^***********a^1、^***********b^2、^***********c^3 。
从上面的对比图可以看出:采用了超线程技术后,处理器真正并行执行多个线程,从而在同一频率和缓存的基础上实现了提高系统性能的技术变革 。
超线程技术对商用和家用电脑而言,除了全面提升系统性能以外,还增加系统平台所能支持用户的数量,大幅降低系统的反应潜伏时间(因为任务能被分为几个隔离的线程来同时执行),增加系统的指令执行数量,还有一点很关键的是,即使对于现有的IA-32体系软件它也能很好地兼容 。因为,HTT处理器还提供一个中断指令,在执行适合单处理器的任务时,暂停其中一个逻辑内核,让操作系统识别为单处理器,在执行适合多处理器的任务时,重新打开逻辑内核,利用HTT来增加整体效率 。
软硬件支持与应用
支持超线程技术需软硬件的支持,硬件方面需要主板北桥芯片的支持 。目前支持超线程技术的北桥有850E、845E、845G(B版本)、845GV、845GE、845PE,以及未来英特尔能支持到533MHz FSB的北桥都将支持超线程技术 。支持400MHz FSB的北桥是不支持超线程技术的,支持超线程技术的处理器配合这样的北桥使用时,只能作为传统的处理器使用 。
超线程技术还需要主板对CPU的电源支持,需要主板能提供给处理器高达70A的电流,否则系统可能不能长期稳定工作 。除此之处还需要主板BIOS的支持,需要BIOS加入特定的支持HTT处理器的代码 。当BIOS检测到是超线程处理器时,在BIOS设置菜单中出现CPU Hyper-Threading(Enabled or Disabled)的选项 。
超线程技术还需要操作系统的支持 。目前支持超线程技术的有Windows XP和Linux 2.4.X 。这不同于传统的处理器安装的Windows XP,使用超线程技术的处理器安装完Windows XP后在设备管理器中能显示有两个处理器和ACPI Multiprocessor PC 。
当然你的处理器必须支持超线程技术 。从即将于下个月发布的3.06GHz P4开始,英特尔的处理器都将支持超线程技术 。
这里笔者以QDI的P2E 333和P8 333这两款主板为例,它们的北桥芯片分别是英特尔845PE和845GE,支持533MHz FSB和DDR333,支持处理器超线程技术;主板的CPU供电电源模块符合英特尔Northwood FMB2标准,能提供70A的电流;在测试中使用超线程处理器3.06GHz P4 CPU(实验样品)开机后,进入BIOS中出现CPU Hyper-Threading的选项 。
安装Windows XP后,设备管理器出现两个处理器和ACPI Multiprocessor PC,在任务管理器中出现两个CPU实时使用率的图标,如^***********d^4:
笔者对开启和关闭CPU Hyper-Threading功能的测试中,发现启用超线程技术能使系统性能提高近20%左右 。
Cpu超线程到底有什么实际用途??
想知道CPU超线程有什么用,就得先知道CPU的流水线是怎么回事 。
我这里打个比方来说,可能你更好理解,要不就得长篇大论的解释了 。
CPU将一件工作,分成10份,由10个人来分别完成,只有10个人全完成了,这个工作才算全完成,可以理解为10跳流水线共同完成完这项工作的所有部分,CPU才可以进行下一件工作 。一件工作分得越细致,需要的人越多,流水线就越长,效率(CPU频率)越高,就像工厂里的生产线一样 。
然而可能分给每个人(每条流水线)的任务不尽相同,有的先完成了,有的后完成了,先完成的必须等待后完成的做完了才可以进行CPU下一工作 。这样就造成了空闲 。流水线做的越长(工作分得越细致、共同完成这个工作的人越多)这种情况越严重 。
因此超线程技术就诞生了,超线程技术实际上是虚拟一个CPU,让已经完成自己任务的,进入等待状态的流水线(那个分配的任务比较轻的,干活比较快的人),提前进行下一任务 。这样可以提高效率 。
这个其实只是理论上的提高运行效率,根据实际情况,开启超线程的CPU性能比不开启状态强不了多少,因为毕竟虚拟的那个CPU核心不是真正的CPU,先进行下一个任务的流水线还得等待其他流水线干完所有任务才算完成工作 。
超线程技术有什么用?明白点!不要复制的!
Intel正式发布了“Hyper-Threading Technology(超线程技术)”这项技术将率先在XERON处理器上得到应用 。通过使用该技术,Intel将提供世界上首枚集成了双逻辑处理器单元的物理处理器(其实就是在一个处理器上整合了两个逻辑处理器单元),据说能够提高40%的处理器性能,类似的技术似乎也将出现在AMDK8-Hammer处理器上 。
何为Hyper-Threading:
当今的处理器发展普遍向着提高处理器指令平铺速率的方向迈进,但由于所使用的处理器资源会有冲突,因此性能提升的效果并不理想 。而通过Hyper-Threading技术,通过在一枚处理器上整合两个逻辑处理器(注:是处理器而不是运算单元)单元,使得具有这种技术的新型CPU具有能同时执行多个线程的能力,而这是现有其它微处理器都不能做到的 。
简单的说,Hyper Threading是一种同步多执行绪(SMT,simultaneous Multi-threading)技术,它的原理很简单,就是把一颗CPU当成两颗来用,将一颗具Hyper-Threading功能的“实体”处理器变成两个“逻辑”处理器而逻辑处理器对于操作系统来说跟实体处理器并没什么两样,因此操作系统会把工作线程分派给这“两颗”处理器去执行,让多种应用程序或单一应用程序的多个执行绪(thread),能够同时在同一颗处理器上执行;不过两个逻辑处理器是共享这颗CPU的所有执行资源 。
Hyper-Threading技术简介
Hyper-Threading做法是复制一颗处理器的架构指挥中心(architectural state)变成两个,使得Windows操作系统认为是在与两颗处理器沟通,但这两个架构指挥中心共享该处理器的工作资源(execution resources) 。架构指挥中心追踪每个程序或执行绪的执行状况;工作资源指的则是“处理器用来进行加、乘、加载等工作的单元(execution unit)” 。如此一来,操作系统把工作线程安排好以后,就分派给这两个逻辑上的处理器执行,而这颗CPU的每个执行单元等于在同样的时间内要服务两个“指令处理中心”,当然它的效率就高多了,操作系统就把一颗实体的处理器认定为两个逻辑处理器作工作指派,当然整体工作效能就比没有具备Hyper-Threading 的处理器高出许多,性价比自然高出许多 。
超线程技术实现的必要条件
除了硬件支持之外,我们必须注意到,超线程技术的实现还需要软件的支持才能够发挥出应有的威力 。首先是操作系统的支持,我们必须使用支持双处理器的操作系统,如Win2000等才能完全发挥出超线程技术的性能 。至于软件方面,目前很多专业的应用程序对于双处理器都提供了支持,如著名的图形处理软件3Dmax、Maya等 。
此外,很多用户可能会有疑问,既然超线程技术以前专门针对服务器处理器,那么现有的众多软件,能否完全兼容支持超线程技术的处理器,是否还需要什么修改才能运行呢?其实这个我们大可不必担心,现有的IA32软件不需进行任何的修改,就可以在支持超线程的P4处理器上很好的运行了 。
超线程=效能提升?
一般很多人都会认为,采用超线程技术,就能使得系统效能大幅提升,但是事实真是如此么?不要忘了我们前面说到的超线程技术实现的必要条件,这可是超线程技术发挥应有效能的前提条件 。除了操作系统支持之外,还必须要软件的支持 。从这点我们就可以看出,就目前的软件现状来说,支持双处理器技术的软件毕竟还在少数 。对于大多数软件来说,目前由于设计的原理不同,还并不能从超线程技术上得到直接的好处 。因为超线程技术是在线程级别上并行处理命令,按线程动态分配处理器等资源 。该技术的核心理念是“并行度(Parallelism)”,也就是提高命令执行的并行度、提高每个时钟的效率 。这就需要软件在设计上线程化,提高并行处理的能力 。而目前PC上的应用程序几乎没有为此作出相应的优化,采用超线程技术并没不能获得效能的大幅提升 。
上面说的只是目前软件支持的现状,操作系统在这个方面则没有太大的问题,毕竟Windows的某些版本、Linux都是支持多处理器的操作系统 。并且随着Intel支持超线程技术的处理器面世之后,凭借Intel处理器的号召力,必然会引起目前应用程序设计上的改变,必然会有更多的支持并行线程处理的软件面世,届时,当然是支持超线程处理器大显身手的时候了 。那时候,普通用户才能够从超线程技术中得到最直接的好处 。
但是我们还是需要看到,随着目前操作系统对于双处理器技术的广泛支持,例如Windows2000、Windows XP等操作系统都支持双处理器,在这些操作系统上使用支持超线程技术的处理器,对于系统的整体性能还是有一定的提高的 。。
12代超线程有什么用cpu超线程技术的作用:可以使操作系统或者应用软件的多个线程同时运行于一个超线程处理器上 。超线程处理器内部的两个逻辑处理器共享一组处理器执行单元,这可以让cpu发挥更大的效率,提高处理能力 。
cpu用处:
CPU超线程就是利用特殊字符的硬件指令,把两个逻辑内核模拟成物理芯片,让单个处理器能使用线程级并行计算,从而兼容多线程并行计算,从而兼容多线程操作系统和软件,使运行性能提高 。
cpu 中的超线程是什么意思?
超线程”(Hyperthreading Technology)技术就是通过采用特殊的硬件指令,可以把两个逻辑内核模拟成两个物理芯片,在单处理器中实现线程级的并行计算,同时在相应的软硬件的支持下大幅度的提高运行效能,从而实现在单处理器上模拟双处理器的效能 。其实,从实质上说,超线程是一种可以将CPU内部暂时闲置处理资源充分“调动”起来的技术 。
“超线程”的实现条件:CPU的支持,主板芯片组和主板BIOS的支持,操作系统和应用软件的支持 。
一般说来,最大发挥HT技术的运行效能还需要真正支持超线程技术的软件,现实中这样的软件是少之又少的 。除了MS Office系列软件和一些视频、图形如Photoshop等专业软件外几乎都不支持HT技术 。很多游戏也不支持HT技术 。
【Cpu超线程到底有什么实际用途 超线程有什么用处】关于超线程有什么用和超线程有什么用处的内容就分享到这儿!更多实用知识经验,尽在 www.hubeilong.com