词条 | 四线程 |
释义 | 详情 多线程是类似的概念 抢先多任务 但在实施线在现代的执行水平超标处理器。 同时多线程(SMT)的是两个主要的多线程实现之一,其他形式被 时间多线程。在时间多线程,只有一个线程可以执行的指令在任何特定的时间阶段管道。在同时多线程,从多个线程指令可以执行在任何特定的时间阶段管道。这样做是没有基本的处理器架构的巨大变化:增加所需要的主要是能够获取从多个线程在一个周期的指示,和更大的登记文件来保存从多个线程的数据。的并发线程的数量可以决定的芯片设计,芯片上的复杂性,但实际的规定,限制了大多数的SMT实现的数目为两个,虽然有多达8个,每个内核线程被,例如, 基于UltraSPARC T2的。 由于该技术的确是一个有效率的解决方案是不可避免的冲突共享资源增加,测量或解决方案的有效性可能很难达成一致。一些研究人员已经证明,额外的线程可以被用来积极种子就像一个缓存共享资源,提高单个线程的另一个表现,并声称这表明SMT是不是只是一个效率的解决方案。其他人使用的SMT提供冗余计算,对部分错误检测和恢复的水平。 然而,在大多数当前情况下,SMT是对隐藏内存延迟,提高效率,增加每硬件使用量计算吞吐量。 分类学 在处理器的设计,有两种方法可以用较少的资源需求增加片上并行:一种是 超标 技术,它试图以增加指令级并行(独立工党),另一种是 多线程 方法利用线程级并行(TLP)的。 超标量是指在同一时间执行多个指令,而芯片级多线程(CMT)的一个处理器芯片内执行多个指令线程在同一时间。有很多方法可以支持多个线程在一个芯片上,即: 交织多线程:从不同的线程多个指令交错的问题,也被称为 时序多线程。它可以进一步分为细粒度多线程或粗晶粒多线程依赖于频率的交叉问题。 细粒度 多线程 - 例如在 桶处理器 - 问题的指示后,每个周期,同时为不同的线程 粗晶粒 只有多线程切换到另一个线程的问题时,从当前执行的线程导致一些长期潜伏的事件,如页故障等(指令)。粗晶粒多线程是较常见的为少线程之间的上下文切换。例如,英特尔的 蒙特西托 处理器使用粗粒多线程,而Sun的 UltraSPARC T1处理器 使用细粒度多线程。对于那些只有一个处理器,每个核心的管道,交织多线程是唯一可能的方式,因为它可以发行最多每个周期的指令。 同时多线程(SMT)的:从多个线程发出多个指令在一个周期。超标量处理器必须这样做。 芯片级多处理(CMP或 多核):集成了两个或更多 超标[编辑] 到一个芯片处理器,每个独立的线程执行 任何多线程/贴片/ CMP的组合 区分的关键因素是看他们有多少可以发出指令,处理器在一个周期中,有多少线程从该指示来。例如,Sun微系统公司的 UltraSPARC T1处理器 (称为“尼亚加拉”,直到其2005年11月14日发布)是一种多核心处理器,细粒度多线程同步多线程技术,而不是因为每个问题的核心只能一次一个指令相结合。 实现历史 同时多线程处理器上世纪50年代以来各地,同时多线程首先研究由IBM于1968年。微处理器的第一个重大的商业开发是与贴片 阿尔法21464 (EV8)。这是由微处理器 12月 在院长的协调下,美国加州圣迭戈,和苏珊埃格斯和汉克的华盛顿大学利维大学Tullsen。微处理器是从未公布以来,微处理器阿尔法线,前不久已停止 惠普 后天 康柏 这反过来又收购 12月。院长Tullsen的工作也被用来发展“超线程“(或”HTT的“)的英特尔奔腾4处理器的版本,如”诺斯伍德“和”斯科特“。 现代商业实现 该 英特尔 奔腾4 第一届现代台式机处理器同时执行多线程,从2002年发表的配备3.06GHz模式,因为到了他们的处理器的数量引进开始。英特尔调用功能 超线程技术 (HTT)最大,并提供了一个基本的两个线程的SMT引擎。英特尔声称高达30%的速度相比提高了对一个相同的,否则,非贴片奔腾4。看到的是,性能改善非常取决于应用程序,以及一些方案其实稍为放缓,开启时HTT的是,由于增加对资源的争夺如带宽,高速缓存, TLBs, 重新排序缓冲区 参赛作品等,这通常是用于数据访问例程写得不好,造成高延迟intercache交易(缓存抖动在多处理器系统)的情况。以前编写的程序设计的多处理器和多核是普遍常见的优化,因为没有一个单一的CPU系统缓存访问,只有一个单一缓存始终是与自己一致。在多处理器系统上的CPU或核心通常有它自己的缓存,这是与其他CPU /核心在系统缓存中相互联系,保持缓存的一致性。如果线程A访问一个内存位置[00]和线程B然后访问内存位置[01]它可引起intercache交易,特别是当缓存线填充超过2个字节,因为是所有现代处理器的情况。 最新[什么时候?] MIPS架构 表面贴装系统设计包括一个被称为 “MIPS的吨”。为双方提供的MIPS吨重量级虚拟处理单元,重量更轻的硬件microthreads。 RMI公司,一苹果的启动,是首个MIPS处理器供应商提供一个 有机碳 基于8个内核,每个运行4个线程。该线程可以运行在精细模式下,粮食在不同的线程可以执行每个周期。线程也可以分配的优先次序。 该 IBM公司 基于POWER52004年5月宣布,来作为双核心扩张型心肌病,或四核心或10月核心MCM的每个包括两个线程的SMT引擎的核心。 IBM的执行比以往复杂的,因为它可以分配一个不同的优先级到各个线程,更细粒度和SMT的引擎可以打开和关闭动态,以便更好地执行这些工作负载凡的SMT处理器将不提高性能。这是IBM的普遍可用的硬件多线程的第二个执行。 虽然很多人说, 太阳微系统公司' UltraSPARC T1处理器 (称为 “尼亚加拉” 直到2005年11月14日发布)和即将推出的处理器 代号 “岩“ (将于2009年〜 [一])是实现的 SPARC的 重点几乎完全利用SMT和 博闻 技术,尼亚加拉是不实际使用贴片。太阳是指结合的方法,因为这些“全面经济状况评审”,以及整体概念,“吞吐量计算”。尼亚加拉有8个内核,但每个核心只有一个管道,因此,实际上它使用细粒度多线程。不像表面贴装技术,其中从多个线程共享的问题窗口每个周期指令,处理器采用了单循环的政策问题,从下一个活动线程每个周期指令。这使得它更类似于 桶处理器。 太阳微系统公司' Rock处理器 是不同的,它有更多复杂的内核,有一个以上的管道。 该 英特尔 原子在2008年推出,是第一个英特尔产品功能不支持的指令重新排序,投机执行的SMT(如超线程行销),或注册更名。英特尔重新超与线程 黑尔姆微后,其对缺席 Core微架构。 同步多线程不能提高性能,如果是共享资源的任何限制的性能瓶颈。事实上,有些应用程序运行速度较慢时,同时启用多线程。批评者认为这是一个相当大的负担,把软件开发人员,他们要测试是否同步多线程是好还是坏了他们在不同的情况及应用插入额外的逻辑来关闭它,如果它降低性能。目前的作业系统缺乏方便 空气污染指数 为此呼吁,并防止与从不同的优先采取互相资源进程 [2]。 还有一个同步多线程安全问题。它已被证明,它有可能为一个应用程序窃取一 密钥 从另一个应用程序在同一个处理器上运行的方法是监测其使用缓存 。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。