首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 93 毫秒
1.
一种有效的同时多线程处理器取指控制机制   总被引:1,自引:0,他引:1  
同时多线程处理器通过每时钟周期从多个运行的线程取指令执行,极大地提高了处理器的性能.分支预测器的预测精度和取指策略的效率是影响同时多线程处理器性能的关键.通过将一个基于值的分支预测器和一个基于线程推进速度的取指策略相结合,提出一种新的取指控制机制.该结构的硬件开销较小,实现复杂度较低.实验结果表明,该取指控制机制有效地提高了处理器的性能,其相对于传统取指控制机制的性能加速比为28%且该加速比也高于目前基于流缓冲区和基于分支分类器的取指控制机制.  相似文献   

2.
EPIC硬件简单,同时多线程易于开发线程级并行,在EPIC上实现同时多线程可以结合二者的优点。取指策略对同时多线程处理器的性能有重要影响。该文介绍了几种有代表性的超标量同时多线程处理器取指策略,分析了这些策略在EPIC同时多线程处理器上的适用性,提出了一种新的适用于EPIC的取指策略SICOUNT。分析表明SICOUNT策略可以充分利用EPIC软硬件协同的优势,在选择取指线程时使用编译器所提供的停顿信息,能更精确地估计各个线程的流动速度,使取出指令的质量更高。  相似文献   

3.
同时多线程处理器在每时钟周期从多个线程读取指令执行,极大地提高了指令吞吐率.文中简单介绍了SMT技术,讨论了常用的取指策略,比较了各策略在提高性能方面的优劣.给出特定负载下理论上的最优取指策略,在此基础上提出一种基于负载瞬时IPC性能的动态取指策略IPCBFP.实验表明,该策略可以有效地提高负载的性能,平均加速比对于两线程负载可以达到17%,对于四线程负载可以达到8%.该策略还具有平均占用指令队列项少,指令队列冲突率低的特点,而且,对降低SMT的Cache失效率和TLB失效率方面也有一定的作用.  相似文献   

4.
The resource sharing nature of Simultaneous Multithreading (SMT) processors and the presence of long latency instructions from concurrent threads make the instruction scheduling window (IW), which is a primary shared component among key pipeline structures in SMT, a performance bottleneck. Due to the tight constraints on its physical size, the IW faces more severe pressure to handle the instructions from various threads while attempting to avoid resource monopolization by some low-ILP threads. It is particularly challenging to optimize the efficiency and fairness in IW utilization to fulfill the affordable performance by SMT under the shadow of long latency instructions. Most of the existing optimization schemes in SMT processors rely on the fetch policy to control the instructions that are allowed to enter the pipeline, while little effort is put to control the long latency instructions that are already located in the IW. In this paper, we propose streamline buffers to handle the long latency instructions that have already entered the pipeline and clog the IW, while the controlling fetch policies take time to react. Each streamline buffer extracts from IW and holds a chain of instructions from a thread that are stalled by dependency on a long latency load.  相似文献   

5.
《计算机工程》2017,(4):46-51
在同时多线程处理器中,各线程对于浮点和整数资源需求不同,合理分配线程的共享资源是提升处理器整体性能的重要因素。为此,提出一种浮点与整数资源区别分配的取指策略,合理分配各个线程对于浮点和整数资源的使用情况。实验结果表明,与ICOUNT,STALL等策略相比,该策略在算术平均IPC和调和平均IPC方面均取得一定的性能提升,同时其在处理浮点和整数混合型程序时也具有优势。  相似文献   

6.
SMT处理器的资源分配一般是通过调控各线程的取指过程间接实现的,这种间接调控有时会导致资源滥用和饥饿,从而严重浪费资源并降低整体性能.以往的改进措施往往实现代价较大,且不能消除资源分配的"不均衡性",因此效果不太理想.文中提出一种新的SMT处理器资源调控机制——线程感知寄存器重命名TSRR(Thread-Sensitive Register Renaming),消除了资源分配的"不均衡性",其优点如下:(1)资源分配自动适应线程运行状态的变化,实现"按需分配";(2)通过调控重命名寄存器文件(RRF)的分配来间接控制其它资源分配,实现代价较低;(3)兼顾资源分配的效率和公平,既防止了资源滥用和饥饿,又充分发掘各线程的性能潜力.此外,TSRR还可以间接降低RRF的尺寸要求和取指逻辑的复杂度.  相似文献   

7.
当前,对同时多线程(Si multaneous Multithreading,SMT)处理器取指策略的研究大都集中在总体性能的优化上.文中提出一种新颖的SMT处理器取指策略(Controlling Performance of Individual Thread,CPIT),用于控制个体线程的执行.结果表明,对于模拟的所有负载,CPIT在94%以上的情况下都能保证受控线程获得期望性能.而对于失败的情况,受控线程的平均性能偏差不超过1.25%.此外,CPIT策略对处理器总体性能的影响并不大.与ICOUNT这种以优化性能为目标的取指策略相比,总体性能的平均降低不超过3%,而除受控线程外的其他线程的性能平均只降低了1.75%.  相似文献   

8.
一种具有QoS特性的同时多线程处理器取指策略   总被引:4,自引:0,他引:4  
同时多线程处理器通过每时钟周期从多个运行的线程取指令执行,从而极大地提高了处理器的性能.建议了一种具有QoS特性的同时多线程处理器取指策略,并讨论了其在QoS管理方面的问题.该策略的核心思想是利用线程的优先级和流速来同时控制线程的取指过程,从而满足线程在执行速度上的QoS需求.与传统的基于纯优先级的取指策略相比,该策略不但具有QoS特性,同时还可以更加有效地分配取指带宽,从而能获得更高的处理器性能.该策略的物理实现非常简单.模拟实验的结果表明,该策略在提供QoS支持的基础上,可以在传统的基于优先级的取指策略ICOUNT的基础上提高15%的系统性能.  相似文献   

9.
在同时多线程处理器中,提高取指单元的吞吐率意味着各线程之间的Cache竞争更加激烈,而这种竞争又制约着取指单元吞吐率的提高。本文针对当前超长指令字体系结构的新特点,提出了一种同时提高取指单元和处理器吞吐率的方法。该方法通过尽可能早地作废取指流水线中的无效地址,减少了由无效取指导致的程序Cache冲突,也提高了整个处理器的性能。实验结果表明,该方法使处理器和取指单元的吞吐率均相对提高了12%~23%,而一级程序Cache的失效率则略微增加甚至降低。另外,它还能够减少10%~25%的一级程
程序Cache读访问,从而降低了处理器的功耗。  相似文献   

10.
同时多线程(SMT,Simultaneous Multithreading)处理器通过每个周期同时运行来自多个线程的指令来提高性能.同时执行的线程在共享资源的同时也在竞争资源.如果一个发生L2 cache失效的线程长时间占用共享资源,那么会导致其他线程运行速度减慢,甚至会因为缺少资源而停顿下来,从而降低了SMT处理器的总体性能.为了减小L2 cache失效给SMT处理器性能带来的负面影响,许多取指策略被提了出来,DWarn就是其中比较有效的一种.本文在DWarn的基础上进行改进,提出了DWarn+取指策略.模拟结果表明,当同时运行的线程数目不超过4时,无论使用IPC作为度量标准还是使用Hmean作为度量标准,DWarn+都要明显优于DWarn;当同时运行的线程数目大于4时,DWarn+相对于DWarn的提高主要体现在存储器访问密集的工作负载上,而对于所有类型工作负载,DWarn+相对于DWarn的平均提高非常有限.  相似文献   

11.
面向应用扩展指令集是面向特定应用处理器设计过程的一个重要环节,这一工作的自动实现对于缩短产品开发周期具有非常重要的意义。现有的技术未能实现该过程的完全自 动化,而且在选择指令时并没有全面考虑指令对处理器面积和功耗的影响。本文设计并实现了一个面向特定应用的指令集自动扩展系统,该系统不仅可以根据应用特征自动扩展
新指令,而且可以自动完成编译器的修改。模拟结果显示,扩展的新指令能够在保持功耗、面积基本不变的前提下,带来4.7%~16.7%的性能提升。  相似文献   

12.
By executing two or more threads concurrently, Simultaneous MultiThreading (SMT) architectures are able to exploit both Instruction-Level Parallelism (ILP) and Thread-Level Parallelism (TLP) from the increased number of in-flight instructions that are fetched from multiple threads. However, due to incorrect control speculations, a significant number of these in-flight instructions are discarded from the pipelines of SMT processors (which is a direct consequence of these pipelines getting wider and deeper). Although increasing the accuracy of branch predictors may reduce the number of instructions so discarded from the pipelines, the prediction accuracy cannot be easily scaled up since aggressive branch prediction schemes strongly depend on the particular predictability inherently to the application programs. In this paper, we present an efficient thread scheduling mechanism for SMT processors, called SAFE-T (Speculation-Aware Front-End Throttling): it is easy to implement and allows an SMT processor to selectively perform speculative execution of threads according to the confidence level on branch predictions, hence preventing wrong-path instructions from being fetched. SAFE-T provides an average reduction of 57.9% in the number of discarded instructions and improves the instructions per cycle (IPC) performance by 14.7% on average over the ICOUNT policy across the multi-programmed workloads we simulate. This paper is an extended version of the paper, “Speculation Control for Simultaneous Multithreading,” which appeared in the Proceedings of the 18th International Parallel and Distributed Processing Symposium, Santa Fe, New Mexico, April 2004.  相似文献   

13.
在体现EPIC设计思想的Itanium微处理器中,寄存器堆的管理是通过寄存器堆栈引擎(RSE)技术实现的。EPIC硬件简单,动态同时多线程(DSMT)易于开发线程级并行,针对结合二者优点的EDSMT微体系结构,我们提出一种基于映射表的寄存器堆管理方法—MTRSE。该方法兼容Itanium体系结构,支持同时多线程,并提高了寄存器资源使用效率。实验表明,当线程数为3或4时,该方法对于寄存器资源有40%使用效率的提升。  相似文献   

14.
描述了一种基于超长指令字处理器的同时多线程微体系结构——MOSI(MultiOp Splitting Issue,多操作①分离发射).MOSI动态地发射同一多操作内的指令.并通过写回缓冲保证计算结果的写回顺序与编译器的视图一致,从而以较小的代价解决了SMT技术中的关键问题.文中详细描述了写回缓冲的结构及算法,给出了多个线程的硬件模型,最后对硬件支持线程的个数及Cache的组织结构进行了讨论.实验结果表明,基于MOSI结构的双线程处理器能够将吞吐率提高40%.  相似文献   

15.
可重构指令集处理器能够适应多变的计算任务在性能和灵活性两方面的要求,而传统的编译后端技术无法为其生成高效的可执行代码,需要有新的代码生成方法.针对传统编译后端代码生成三阶段方法进行扩展的代码混合优化生成算法正是这样一种方法.该算法很大程度地复用了原有的三阶段代码生成过程,同时针对可重构指令集具有动态性的特点,根据系统硬件资源和重构配置,扩展了针对可重构指令代码生成的优化处理,从而能够获得切合可重构指令集处理器体系结构特性的可执行代码.相关实验与分析说明了该算法针对硬件重构得到的新平台所做的可重构指令代码生成是有效的,能够较好地提高应用程序在新平台上的执行性能.  相似文献   

16.
能效比是未来高性能计算机需要解决的重要问题.众核处理器作为高性能计算机的重要实现手段,其微结构的优化设计对能效比提升尤为关键.提出了1种面向众核处理器的流水线紧耦合的指令循环缓存设计,以较小的L0指令缓存提供更加高能效的指令取指.作为体系结构研究同硬件可实现性紧密结合的1次尝试,设计始终考虑了硬件实现代价这一关键约束.为了控制L0指令缓存对流水线性能的影响,指令缓存采用了循环出口预取技术,以此保证指令缓存提供的低功耗的指令取指能够最终转化为流水线能效比的提升.在gem5模拟器上实现了对指令循环缓存的模拟.对SPEC2006的测试结果表明,在不影响流水线性能的前提下,设计的典型配置可以减少27%的指令取指功耗以及31.5%的流水线前段部件动态功耗.  相似文献   

17.
由于可扩展处理器能够在设计周期、灵活性、性能以及功耗等方面提供良好的折中,近年来,可扩展处理器大量地在嵌入式系统和电子设备中使用.自定义指令自动识别是可扩展处理器设计的关键.针对自定义指令自动识别问题,提出并实现了从给定的应用程序代码中自动识别最大凸自定义指令(maximal convex subgraphs, MCSs)的迭代设计流程.提出的设计流程解决了2个关键问题:MCSs自动枚举问题和MCSs自动选择问题.针对MCSs枚举问题,提出了一种夹心方式枚举所有候选最大凸自定义指令,该算法结合了自下而上和自顶向下方式的优点.与最新算法相比,提出的算法可以实现数量级的加速.针对MCSs选择问题,提出了一种利用候选指令之间的重叠关系建立兼容图,并应用非重叠规则来修剪大量的搜索空间的精确选择算法.实验结果表明:利用提出的精确算法,在大多数情况下可以找到用于最大化提升性能的MCSs.  相似文献   

18.
同时多线程处理器中同时执行的线程共享处理器中的资源,而这些有限的共享资源在线程之间的分配状况将决定每个线程执行的性能和处理器的总体性能。如何根据不同类别共享资源的特性对它们进行合理有效分配成为同时多线程处理器研究的重要课题之一。本文对同时多线程处理器中各类共享资源的特性进行深入研究与分析,分析结果表明,队列类共享资源的分配方式对每个线程执行的性能和SMT处理器的总体性能具有至关重要的影响。因此,同时多线程处理器中共享资源分配的关键在于控制队列类共享资源的分配。  相似文献   

19.
处理器研制过程中需要对指令算术数据路径进行覆盖验证.针对现有模拟验证方法存在的不足,提出了一种基于可满足模理论(satisfiability modulo theory, SMT)的指令约束求解方法:利用可满足模理论求解器将指令级功能验证任务转化成数据约束求解满足问题.在结果操作数约束、操作数间约束、指令内部约束以及浮点操作数约束4个方面分别给出示例,并分别给出了利用SMT求解器进行约束建模的关键过程以及可以用于指令级功能验证的元组数据.为提高求解模型效率,提出了2种解决方法:首先利用时间阈值实现问题求解超时即终止的策略;其次是结合进程管理与线程管理技术,实现了指令功能约束并行求解框架,将串行求解任务分派给可并行执行的多个线程,提高了求解速度.该技术已成功应用于系统级验证中,有效提升了测试覆盖与质量,取得了很好的效益.  相似文献   

20.
The performance of superscalar processors depends on many parameters with correlated effects. This paper explores the relations between some of these parameters, and more particularly, the requirement in instruction fetch bandwidth. We introduce new enhancements to increase the bandwidth of conventional instruction fetch engines. However, experiments show that the performance does not increase proportionally to the fetch. Once the measured IPC is half the instruction fetch bandwidth, increasing the fetch bandwidth brings very little improvement. In order to better understand this behavior, we develop a model from the empirical observation that the available instruction parallelism grows as the square root of the instruction window size. From the model, we derive that the fetch bandwidth requirement grows as the square root of the distance between mispredicted branches. We also verify experimentally that, to double the IPC, one should both double the fetch bandwidth and decrease the number of mispredicted branches fourfold.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号