多线程使多个线程以重叠的方式共享单个处理器的功能单元教学课件.PPT
《多线程使多个线程以重叠的方式共享单个处理器的功能单元教学课件.PPT》由会员分享,可在线阅读,更多相关《多线程使多个线程以重叠的方式共享单个处理器的功能单元教学课件.PPT(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、多线程使多个线程以重叠的方式共享单个处理器的功能单元教学课件 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望 第一种方法:细粒度多线程技术 它在每条指令间都能进行线程的切换,从而导 致多个线程的交替执行。主要优点:能够隐藏由任何或长或短的阻塞带来的 吞吐率的损失 主要缺点:减慢了每个独立线程的执行q 目前有两种主要的多线程实现方法7.6 同时多线程 第二种方法:粗粒度多线程技术 粗粒度多线程之间的切换只在发生代价较高、时间较长的阻塞出现时。缺点:不能有效地减少吞吐
2、率的损失。原因:由粗粒度多线程的流水线建立时间的开销造 成的。由于实现粗粒度多线程的CPU只执行单个线 程的指令,因此当发生阻塞时,流水线必须排空或 暂停。阻塞后切换的新的线程在指令执行产生结果 之前必须先填满整个流水线。7.6 同时多线程7.6.1 将线程级并行转换为指令级并行 同时多线程技术是一种在多流出、动态调度处理器上开发线程级并行和指令级并行的改进的多线程技术。1.产生的主要原因q 现代多流出处理器通常含有多个并行的功能单元,现代多流出处理器通常含有多个并行的功能单元,而单个线程不能有效地利用这些功能单元。而单个线程不能有效地利用这些功能单元。q 通过寄存器重命名和动态调度机制,来自
3、各个独立通过寄存器重命名和动态调度机制,来自各个独立 线程的多条指令可以同时流出,而不考虑他们之间线程的多条指令可以同时流出,而不考虑他们之间 的相互依赖关系;其相互依赖关系将通过动态调度的相互依赖关系;其相互依赖关系将通过动态调度 机制得以解决。机制得以解决。7.6 同时多线程2.一个超标量处理器在以下几种配置时其性能的差别 支持多线程技术的超标量处理器 由于缺乏足够的指令级并行而限制了流出槽由于缺乏足够的指令级并行而限制了流出槽 的利用率。的利用率。支持粗粒度多线程的超标量处理器 通过线程的切换部分隐藏了长时间阻塞带来通过线程的切换部分隐藏了长时间阻塞带来 的开销。由于只有当发生阻塞时才进
4、行线程切换,的开销。由于只有当发生阻塞时才进行线程切换,新线程还需要流水线建立时间,所以会产生一些新线程还需要流水线建立时间,所以会产生一些 完全空闲的时钟周期。完全空闲的时钟周期。7.6 同时多线程 支持细粒度多线程的超标量处理器 线程的交替执行消除了完全空闲的流出槽。由于线程的交替执行消除了完全空闲的流出槽。由于在每个时钟周期内只流出一个线程的指令,指令级并在每个时钟周期内只流出一个线程的指令,指令级并行的限制仍然导致一个时钟周期内存在不少的空闲流行的限制仍然导致一个时钟周期内存在不少的空闲流出槽。出槽。支持同时多线程的超标量处理器 通通过过在在一一个个时时钟钟周周期期内内调调度度多多个个
5、线线程程使使用用流流出出槽槽,从而同时实现线程级并行和指令级并行。从而同时实现线程级并行和指令级并行。理理想想情情况况下下,流流出出槽槽的的使使用用率率只只受受限限于于多多个个线线程程对资源的需求和可用资源间的不平衡。对资源的需求和可用资源间的不平衡。7.6 同时多线程图图7.16:7.16:超标量处理器中的超标量处理器中的4 4种不同的流出槽使用方法种不同的流出槽使用方法q 开发的基础开发的基础:使用动态调度技术的处理器已经具有使用动态调度技术的处理器已经具有 了开发线程级并行所需的硬件设置。了开发线程级并行所需的硬件设置。动态调度超标量处理器有大量的虚拟寄存器组,可动态调度超标量处理器有大
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多线程 使多个 线程 重叠 方式 共享 单个 处理器 功能 单元 教学 课件
限制150内