多核多线程处理器体系结构

多核多线程处理器体系结构

ID:13289634

大小:105.00 KB

页数:8页

时间:2018-07-21

多核多线程处理器体系结构_第1页
多核多线程处理器体系结构_第2页
多核多线程处理器体系结构_第3页
多核多线程处理器体系结构_第4页
多核多线程处理器体系结构_第5页
资源描述:

《多核多线程处理器体系结构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、多核多线程处理器体系结构1.介绍随着微处理器生产工艺的快速发展,芯片上集成晶体管数目显著增加,越来越多先进的处理器技术被实际应用于商业处理器。转移预测、多发射、寄存器重命名、动态调度、乱序执行、非阻塞的高速缓存、访存猜测执行、多级访存系统等关键技术的应用,促使了流水线的有效利用。使得处理器的性能得到了极大提升。但增加发射宽度使设计的复杂性急剧增加,这一方面不利于时钟频率的提高,另一方面也难以适应深亚微米工艺下日益显现的线延大于门延的负面影响,也使处理器设计验证成本难以承受。更重要的是,指令之间的数据和控制相关,可以开发的ILP也有限,当发射宽度大于4时,大多数应

2、用可以获得的性能提升十分有限。提高时钟频率,使流水线级数增加,转移预测失败和Cache失效的代价也随之增加,这样提高时钟频率获得的性能十分有限,另外频率提升使功耗也随之增加,使芯片封装和冷却代价也水涨船高。这些都使经典的超标量结构处理器难以进一步提高处理器性能。2.多核多线程处理器的分类目前流行的多线程处理器结构主要可分为两大类,一类是将原来的单进程程序划分成多个线程并行执行,以达到对单进程程序加速的目的。这类技术又根据硬件是否猜测执行划分出的线程而分为两个子类,进行线程猜测执行的处理器技术主要有多标量处理器(multiscalarprocessors)[1-4

3、],迹处理器(traceprocessors)[5,6],超线程处理器(superthreadedarchitecture)[7],动态多线程处理器(dynamicmultithreadingprocessor)[8],猜测执行多线程处理器(speculativemultithreadedprocessor)[9,10]等。这类多线程处理器不仅要对每个执行线程提供一条独立的流水线,而且还要暂时保存猜测执行线程的执行结果,进行复杂的数据相的检查,这些都导致这类处理器消耗大量的硬件资源使得成本急剧增大,设计复杂度大大增加,设计实现变得十分困难,设计正确性的保证也是困

4、难重重,因此性价比不高,商用处理器都不采用这类技术。对单进程程序加速的多线程处理器的另一子类是不对线程进行猜测执行,也就是不由硬件自动划分出线程,而是由编译器划分多个线程,由编译器从单进程程序中划分出来的线程称为微线程,微线程技术也有两种,一种是同时辅助微线程(simultaneoussubordinatemicrothreading)[11],实现这种微线程技术的处理器在内部用一个RAM来保存微线程,执行的线程可以通过调用微线程来辅助原线程的执行,另一种是微小线程(microthreading)[12-13],由编译器生成多个微线程并行执行,微线程之间通过寄存

5、器进行数据交换和同步。微小线程处理器的结构目前有两种,一种结构是每个微线程保留各自的PC,所有的微线程共用32个逻辑寄存器,当正在执行的微线程发生阻塞则切换到其他已经准备好的微线程执行。这种结构需要的硬件代价很小,只需要为每个微线程保留一份PC的值即可,缺点是每个微线程能够用于计算的局部寄存器比较少,当寄存器数量不够时会导致访存的增加。另一种结构是每个微线程都有独立的流水线和用于计算的局部寄存器,同时处理器中还需要实现用于各个微线程之间进行数据交换和同步的全局寄存器。这种结构的缺点在于实现的硬件代价很大。多线程处理器技术的另一大类是以同时多线程和片上多处理器为代

6、表的,通过在一个芯片上执行多个互不相关的线程来提高整个芯片每一拍并行执行的指令数。这类技术根据多个线程是否共用同一条流水线又可以分为两个子类,其中一类是共用同一条流水线的细粒度多线程(finegrainedmultithreading)[14],粗粒度多线程(coarsegrainedmultithreading)和同时多线程(simultaneousmultithreading,SMT)[15-17],另一类是每个线程各自拥有一条完整流水线的片上多处理器技术(chipmultiprocessor,CMP)[18]。同时多线程是在超标量处理器的结构上同时保持多个

7、线程上下文处于活动状态,在同一个时钟周期内同时执行多个线程的指令。这样,同时多线程处理器就能够利用多线程间的指令不相关,找到更多可以并行执行的指令,而且当某一线程遇到长延迟的指令时,可以从其他的线程中寻找数据准备好的指令继续执行,避免了长延迟指令导致处理器长时间处于闲置状态。同时多线程处理器中的每一个线程除了保存有各自的上下文外,共用同一条流水线和所有的功能部件,因此整个同时多线程处理器和原来的超标量处理器相比,硬件资源增加不多,芯片面积也增加不大。同时多线程处理器最大的优点正在于通过增加很少的芯片面积就能够得到很高的资源利用率,即用较少的成本换取较大的并行性能

8、,充分挖掘了线程级并行技

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。