CPU多线程技术的运用.pptVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CPU多线程技术的运用

Multithreaded processors 多线程处理器 研究组员 李鹏飞 070302308 柳祚前 070302310 钱冰雁 070302313 田荣荣 070302318 王晗 070302321 吴瑕 070302323 线程(thread),有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪、阻塞和运行三种基本状态。 线程是程序中一个单一的顺序控制流程.在单个程序中同时运行多个线程完成不同的工作,称为多线程 多线程技术 如果某个线程进行一次长延迟操作, 处理器就切换到另一个线程执行。这样,多个线程的并行(并发)执行隐藏了长延迟,提高了处理器资源利用率,从而提高了整体性能。 多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率 同时多线程处理器 (simultaneous multithreading,SMT) 综合了多发射的超标量处理器和多线程处理器的特性。同时多线程处理器可以在一个时钟周期内发射多条指令,这是继承于超标量处理的特性;和多线程处理器类似,SMT处理器为多个程序(或线程)保留了硬件现场。 同时多线程(SMT)挖掘了线程级和指令级的并行性,在提高CPU性能方面走出了一条新路 今天,处理器的运算速度达到了每秒10亿次,研究人员仍然在思考如何获得计算性能的显著提高。一般来说挖掘运算所有层次、形式的并行度成为一项重要的手段。在一个程序里面通常有两种并行:指令级并行(Instruction Level Parallelism, ILP),可同时执行两条或多条连续的指令,并且不破坏因指令间数据传递而产生的顺序语义;线程级并行(Thread Level Parallelism, TLP),线程级的并行有更高的层次,一个程序由一组并行执行的任务组成。以往CPU结构挖掘应用程序的并行度往往只从某一种并行入手,最好的解决办法就是开发全方位的并行度。 发射能力比较 优化取指及发射策略是SMT的关键技术 SMT获得高性能的关键是: ● 优化发射策略:由此获得高功能部件利用率,进而得到高指令吞吐率。 ● 优化存储子系统,提供有效的策略来保证数据的供应。 1.取指策略 SMT的取指部件利用各个线程竞争取指带宽来提高性能。首先,SMT在各个线程间分配取指带宽。这是SMT的优点:如果取指部件只能访问一个线程,由于存在转移指令和Cache行边界,使得装填满发射槽很困难;而SMT可以有多个线程竞争取指部件,就可以减少因0发射周期带来的浪费。 其次,处理器每周期可以从两个以上的线程取指,这样提高了只取有用(不是投机的)指令的可能性。 再次,当取指部件智能到知道应该到哪个线程取指的时候,就可以去那些可以立即提升性能的线程取指。 2.发射策略 发射策略有许多种,如: SM:完全同步发射。这是一个便捷的完全同时多线程超标量处理:每周期所有的线程竞争每一个的发射槽。对硬件的复杂度来说,这是实现最简单的模型,但是提供了同时多线程的潜力。下面介绍的几个模型都对发射策略进行了约束,当然也增加了硬件的复杂度。 Cache组织的优化是SMT 的另一个关键技术 SMT只有获得了更高的功能单元利用率,才能提高指令的吞吐率。要实现这一目标,对存储器的层次结构提出了挑战。多线程对Cache提出了更高的要求,由于要获得高指令吞吐量,就需要和运算能力相匹配的持续的指令流,因此Cache系统可能成为最大的瓶颈。 Cache共享有时会导致性能损失,不用的Cache配置对CPU性能的影响大不相同。我们采用一个基于简单的标量模拟器模拟环境来模拟一个SMT处理器。 功耗问题在微处理器设计中变得越来越重要 SMT结构是一种功耗有效的处理器结构,与传统的单线程超标量结构相比具有一定的低功耗优势。实验结果表明:在4个线程同时执行的情况下,执行每条有用指令所需的平均能量比单个线程执行的情况下改进22%。SMT结构中程序执行所需能量减少的主要原因,一是减少了资源利用率低造成的能量浪费,二是减少了无用指令占用资源,减少无用指令是SMT结构功耗低的主要因素

文档评论(0)

asd522513656 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档