
在涉及超线程技术时,每个人都应该熟悉它. 英特尔于2002年推出的Northwood Pentium 4 HT处理器将该技术推向了消费市场.
尽管在随后的Core 2处理器上放弃了超线程,但是2008年推出的Nehalem体系结构Core i7处理器将超线程技术推向了市场,并在今天得到了使用.
当前的Core i7 / i3,某些奔腾和Atom以及双核Core i5和Core M处理器的移动版本都具有超线程技术.
AMD的最新Ryzen系列(最低端的Ryzen 3除外)具有SMT多线程技术,与英特尔的超线程技术相似.

在我们了解超线程是什么之前,我们必须首先知道什么是线程.
线程线程是操作系统可以执行算术动员的最小单元. 它包含在过程中,并且是过程中的实际操作单元. 一个进程中可以并发多个线程,并且每个线程并行执行不同的任务.
Intel超线程技术的学名是Simulate MultiThreading(SMT,同步多线程技术).
SMT是超线程技术的学名,这两件事完全相同. 引入这项技术是为了更好地利用CPU的空闲资源.
自奔腾处理器以来,英特尔引入了诸如超标量,乱序操作,大量寄存器和寄存器重命名,多指令以及预测操作等功能. 这些功能的原理是允许CPU有很多资源,并且可以并行运行命令并运行,以提高命令效率.

实际上,这些资源通常是空闲的. 为了有效地使用这些资源,我们只需添加更多资源来运行第二个线程,以便这些空闲资源可以运行另一个线程.
什么是多线程?
MultiThreading的概念有点模棱两可. 多线程可以指在CPU内核上同时执行多个线程或执行多个任务. 尽管它们在同一内核中执行,但它们是完全分开的.
多线程在概念上与抢先式多任务类似,但是它是在当前超标量处理器中的线程级别实现的.
多线程有两种主要的实现方法,一种是时间多线程,另一种是模拟多线程. 时间多线程可以进一步分为细粒度多线程和粗粒度. 多线程粗粒度多线程.

各种多线程技术
CMT粗粒度多线程是最简单的多线程技术. 当单个执行线程遇到较长的延迟(例如“缺少缓存”)时,将切换该线程,并且原始线程将等待操作完成,然后再切回.
FMT细粒度多线程比CMT粗粒度多线程复杂. 它可以在每个时钟周期中随时切换多个线程,以追求最大的输出容量. 当然,随时切换也是有代价的. 每个执行线程的平均执行时间更长.
消费类处理器上均未使用CMT和FMT. Intel和AMD处理器使用SMT同步多线程,但是NVIDIA和AMD GPU都使用FMT技术.

SMT同步多线程具有多个执行单元. CMT和FMT是单个执行单位下的技术. 不同的线程在指令级别并不是真正的“并行”,而SMT具有多个执行单元. 可以同时执行多个指令,这可以充分利用超标量处理器的潜力. 因此,SMT具有最大的灵活性和资源利用率,但是处理器也更加复杂.
但是,当前的使用者处理器都是超标量处理器,因此,为了支持SMT,体系结构没有太大变化: 主要需要增加的功能是能够在一个周期内从多个线程中获取指令,并且需要更大的寄存器文件来处理. 保存来自多个线程的数据.
并发线程数可以由芯片设计人员确定. 常见的模式是每个CPU内核有两个并发线程,但是某些处理器每个内核最多支持八个并发线程.
工作原理
对于单个处理器核心,尽管它每秒可以处理数千条指令,但在特定时间只能处理一条指令(单线程). 超线程技术可以使一个物理处理器在软件层变成两个逻辑处理器,这使该处理器可以在某个特定时刻同时并行处理更多指令和数据(多个线程). 当然,实际性能不能翻倍. 只有一个生存核心.

逻辑双核和物理双核
可以说,超线程是一种可以完全“调动” CPU内部临时空闲的处理资源的技术. Pentium 4 HT处理器增加了一个逻辑处理单元,该逻辑处理单元允许CPU同时执行多个程序,同时在两个线程都需要某个线程时共享CPU中的资源,例如: ALU,FPU,高速缓存等. 同时,必须暂时停止其中之一的资源,并释放资源,直到这些资源空闲为止. 因此,超线程的性能不等于两个CPU的性能.

四帧(双核,四线程)的Pentium EE 840在2005年显得有些夸张,当时单核仍然是绝对的主流

奔腾4 HT处理器发布时,英特尔表示,超线程技术只会将芯片面积增加5%,可以交换以提高15%〜30%的性能,而后来的Nehalem架构带来了新的超线程技术得益于指令集预测技术和较短的流水线.
它的性能比奔腾4好得多,再加上集成的内存控制器,使其具有更大的内存带宽和更大的缓存,从而可以更有效地发挥超线程的作用.
Nehalem的超线程可以将性能提高20-30%,而能耗却很少增加. 尽管随后的每个世代都有一些细微的变化,但这基本上是Nehalem体系结构的延续.
超线程的作用
事实上,当英特尔首次将超线程技术引入消费市场时,市场反应不佳,因为当时的操作系统和软件并未优化多线程技术,而大多数软件在一个线程中运行. 线程的优势不仅没有得到揭示,而且由于另一个虚拟处理器会抢占资源,因此它的运行速度比没有超线程的处理器还要慢.
这些年来,随着操作系统和软件对多核和多线程的逐步优化,这些问题已经改变. 特别是Windows 10系统已经针对多线程进行了很好的优化,并且操作系统的调度程序设置更加科学,具有多核和多线程的负载更加均匀.
在Windows 10下打开任务管理器时,您会发现物理核心和逻辑核心的负载都相当均衡. 除非手动指定了加载线程,否则以前很少会出现像Windows 7这样的单核加载和多核旁观者. 悲惨的.

Windows 10下的CPU负载相当均匀
关于超线程的作用,实际上非常明显. 我们已经测试了Core i7-6700K和Core i5-7600K. 它们的四核和单核Boost频率相同,均为4.0GHz和4.2GHz. ,区别在于是否存在超线程以及L3缓存的大小. 至于Skylake和Kaby Lake,两者的性能没有差别.


具有超线程功能的Core i7-6700K的多线程性能比Core i5-7600K约高19%. 但是,超线程技术提高了处理器的利用率并增加了吞吐量,同时略微增加了单线程的延迟. ,如果仅看一下单线程功能,Core i5-7600K实际上比Core i7-6700K好约2.8%. 但是,降低这么多的单线程性能实际上是非常经济的,这样多线程的性能可以提高很多.
阅读版本太久了:
简而言之,超线程技术是提高内核利用率,充分调动空闲处理资源并增强内核并行计算性能的好东西. 在操作系统中,一个物理CPU可以用作多个CPU. 使用.
超线程有什么好处:
-有效提高CPU利用率
-提高计算机性能
-提高系统可靠性
例如,双核奔腾G4560具有超线程功能后,其性能飞速增长. 它在低端入门市场中相对流行. 双核四线程处理器可以对应大多数轻量级的日常应用程序.
当然,随着内核数量的增加,超线程的作用会减弱,特别是对于具有八个内核或更多内核的处理器. 16个帧看起来不错,但实际上,许多线程已卸载. 是的,大多数使用者和应用程序无法充分利用这么多线程的性能. 目前,只有视频和3D渲染软件以及压缩软件可以执行此操作. 软件仍然是限制硬件性能的最大因素.
此外,超线程技术需要CPU支持,主板支持,操作系统支持和应用程序软件支持. 这是必不可少的,否则它将无法正常工作.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-311418-1.html
松一手估计也不太站得稳
销量应该很小