超线程有用么:解密CPU的超线程原理与性能
发布网友
发布时间:2022-04-23 07:13
我来回答
共1个回答
热心网友
时间:2022-06-17 08:22
所谓超线程,就是我们平时说的CPU双核四线程这种线程数多余核心数的情况,比如大部分的i5和i7都是支持超线程的。很多人,尤其是一些伪大神认为超线程的两个线程实际上还是一个核心,运行效率低下,不值一提。其实,超线程技术对CPU而言还是有很大性能提升的,因为超线程技术不仅仅是逻辑技术,还是一个硬件技术。
我们先看CPU是如何处理指令的。通俗的说可以分成两部分,第一部分是负责读取指令,第二部分是负责执行指令。一般执行部分是非常复杂的,通俗的来讲,比如加减乘除等需要不同的执行机构,一套执行机构要包括多种运算法则的执行单元。通常的CPU是读取部分和执行部分一对一的,而超线程的CPU则是多个读取部分和一个执行机构对应的,也就是说一个核心里有好几套的读取机构和一套执行机构。
超线程的优势:首先读取机构1和读取机构2分别读取不同的指令,假设指令1是乘法,指令2是加法,那么CPU就可以调用一套执行机构中的不同部分来同时处理;而对于部支持超线程的CPU,执行指令1时尽管加法执行单元是空闲的但是也只能等指令1执行完成之后且指令2读取完毕后才能执行。在这种情况下多线程效率接近多核。
另一种情况:如果指令1和指令2都是加法,那么指令2就必须等待指令1执行完成,这时的超线程和单核是一样的。此外,如果指令2的执行需要指令1的结果,那么指令2也是必须等待指令1的。
那么,多线程技术的效果实际上取决于对指令的排列顺序。在通常的CPU上这是取决于当前执行的程序,而为了提升CPU的性能以intel为首的CPU巨头使用了一个叫做指令预测和乱序的技术。通过数学逻辑上的优化可以相当程度的重排CPU指令顺序这样就能有效的避免指令2等待指令1的悲剧,性能也就提升了不少。
所以,超线程技术其实可以利皆为介于多核和单核的过度,是软件和硬件优化的结合,很难说性能是单核心的多少倍,在合适的条件和性能可以接近多核心,在另外的情况下又可能几乎没有作用,而成本却比多核心要低的多,也能有效的减少多核引起的功耗增加
超线程有用么:解密CPU的超线程原理与性能
所以,超线程技术其实可以利皆为介于多核和单核的过度,是软件和硬件优化的结合,很难说性能是单核心的多少倍,在合适的条件和性能可以接近多核心,在另外的情况下又可能几乎没有作用,而成本却比多核心要低的多,也能有效的减少多核引起的功耗增加 ...
英特尔的超线程技术对CPU提升性能有用吗?
超线程技术是INTEL独有的技术,目的是增强CPU的多线程处理能力CPU每个核心理论上一次只能处理一个线程,双核CPU一次能处理两个线程,四核CPU一次就能处理四个线程。不过核心在实际工作中所处理的指令非常复杂,比如某些指令需要采用另外的指令运算得出的结果来执行,那么在运行中就会常常出现线程“挂起、等待”...
CPU超线程功能有什么用,简单解释一下
CPU超线程功能可在同一时间里,让应用程序使用芯片的不同部分。虽然单线程芯片每秒钟能够处理成千上万条指令,但是在任一时刻只能够对一条指令进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。拥有超线程技术的处理器中,同样也是两颗物理核心,但是,在超线程技术的支持下,分别...
超线程到底有什么用啊
“超线程”(HyperthreadingTechnology)技术是通过采用特殊的硬件指令,可以把两个逻辑内核模拟成两个物理超线程芯片,在单处理器中实现线程级的并行计算,同时大幅提高运行效能,从而实现在单处理器上模拟双处理器的效能。如果我们CPU将一件工作,分成10份,由10个人来分别完成,只有10个人全完成了,这个工...
英特尔的超线程技术对CPU提升性能有用吗?
尽可能的利用核心资源,从而实现单核心能“同时”处理两个线程的目的。当然,超线程技术对CPU多线程处理能力的提升非常有限,最佳的办法还是增加CPU的核心数量。另外,超线程技术需要高频率来支持,如果频率不够高,性能反而会下降,所以酷睿2系列都没有采用这个技术,直到酷睿i系列后才重新启用 ...
大家说说现在CPU超线程技术有用吗?
超线程和多通道其实有着基于相同理论的特点,先说说超线程技术:因为CPU(特别是多核CPU)执行指令时一次只能执行一条指令,而超线程技术就是指通过硬件指令让CPU可以同时执行两条指令甚至多条指令,就好比你的左右手,单线程就是你只用右手工作,而超线程就是你左右手一起工作。这样可以充分发挥核心的...
CPU超线程功能有什么用,简单解释一下
将一个核心虚拟成两个核心,让处理器可以在同一时间内处理更多的数据,老超线程是鸡肋,新的不错
对并行计算来说超线程技术有用吗?
尽可能的利用核心资源,从而实现单核心能“同时”处理两个线程的目的。当然,超线程技术对CPU多线程处理能力的提升非常有限,最佳的办法还是增加CPU的核心数量。另外,超线程技术需要高频率来支持,如果频率不够高,性能反而会下降,所以酷睿2系列都没有采用这个技术,直到酷睿i系列后才重新启用 ...
使用超线程提升处理器性能
超线程工作原理 传统的处理器队列指令在传输到处理器的执行引擎之前会通过流水线架构。应用设计以及需求差异总是会在处理器的指令管道中留有空隙,导致存在空闲的处理器时钟周期。糟糕的程序设计可能会浪费时钟周期并降低处理器性能。为了优化处理器架构并提升多任务处理的可能性,处理器设计人员增加了与一级...
超线程技术有用吗?
有用的,对于支持多处理器的软件性能提升。就像你有100斤力气,干一个活用50斤,还可以同时干另一种活。单线程只能干一个。