【技术实现步骤摘要】
【国外来华专利技术】
本公开总体上涉及信息处理系统,更具体地,涉及支持线程级推测。
技术介绍
多线程逐渐得到硬件上的支持。例如,在一种方式中,多处理器系统(诸如单芯片多处理器(CMP)系统)中的处理器每个都可以并 发地运行多个软件线程中的一个。在被称为同时多线程(SMT)的 另一种方式中,单个物理处理器看起来像是多个逻辑处理器那样操作 系统和用户程序。对于SMT,能够在单个处理器上同时启动并执行 多个软件线程而无需切换。也就是,每个逻辑处理器维护一整套架构 状态,但是该物理处理器的许多其它资源都是共享的,比如高速缓存、 执行单元、分支预测器、控制逻辑和总线。因此,对于SMT来说, 来自多个软件线程的指令并发地在每个逻辑处理器上执行。对于诸如SMT和减CMP系统这样的支持软件线程并发执行的系统, 一个应用程序可以被并行化为多线程代码以利用该系统的并发 执行能力。多线程应用程序的线程之间可能需要通信和同步,这通常 是通过共享存储器来完成的。另外,通过将单线程程序组织为多个线 程然后并发地运行这些线程,每个线程在单独一个线程单元上运行, 该单线程程序也可以被并行化为多线程代码。当在对这样的 ...
【技术保护点】
一种装置,包括: 多个线程单元,用于并发地执行多个线程;以及 存储器缓冲存储区,用于为在所述多个线程中的一个特定线程的指令原子块的执行期间遇到的存储器写指令来存储数据; 其中,所述存储器缓冲存储区是部分持久状态,使得定义了在所述原子块的每个指令的引退边界处的精确的架构状态。
【技术特征摘要】
【国外来华专利技术】US 2005-6-23 11/165,6391、一种装置,包括多个线程单元,用于并发地执行多个线程;以及存储器缓冲存储区,用于为在所述多个线程中的一个特定线程的指令原子块的执行期间遇到的存储器写指令来存储数据;其中,所述存储器缓冲存储区是部分持久状态,使得定义了在所述原子块的每个指令的引退边界处的精确的架构状态。2、 根据权利要求1所述的装置,还包括控制存储区,其内容可以响应于所述特定线程中的用户级编程指令而被更新。3、 根据权利要求2所述的装置,其中所述控制存储区的内容用于控制是否要将存储器写数据存储在存储器地址存储区中。4、 根据权利要求2所述的装置,其中所述控制存储区是寄存器,其包括用于保持状态值的一个或多个字段;所述状态值用于指示下列状态中一个或多个(a)是否将存储器写数据存储在所述存储器缓冲存储区中,(b)是否重置所述存储器缓冲存储区,以及(c)是否旁路所述存储器缓冲存储区而直接写入到存储器。5、 根据权利要求1所述的装置,还包括存储器地址存储区,用于维持在所述原子块执行期间遇到的存储器读指令的地址。6、 根据权利要求1所述的装置,还包括用于执行从所述存储器缓冲存储区到存储器的原子更新的逻辑。7、 根据权利要求6所述的装置,其中,所述用于执行原子更新的逻辑还用于仅当所述原子块已经成功地完成执行时,才执行原子更新。8、 根据权利要求1所述的装置,还包括用户可见状态存储区,其内容反映所述原子块是否未能成功地执行。9、 一种方法,包括在处理器执行推测线程中的指令事务块期间,执行选定的指令;以及维持在所选定的指令的执行边界处所述处理器的精确的架构状态。10、 根据权利要求9所述的方法,还包括在维持所述事务块的精确的架构状态的同时,为陷阱或异常提供 服务。11、 根据权利要求9所述的方法,还包括在维持所述事务块的精确架构状态的同时,对所述事务块的指令 进行单步执行。12、 一种方法,包括在原子块执行期间,对本地存储器写操作进行缓存,其中所述缓存是响应于第一用户级编程指令而执行的;监控在所述原子块执行期间的失败;将所述原子块执行期间的陷阱或异常视为非失败条件; 在处理所述陷阱或异常期间将所缓存的本地存储器写操作维持为持久状态;在处理所述异常或中断之后恢复所述原子块的执行;以及 基于是否发生所述失败,选择性地执行所缓存的存储器写操作的 原子存储器更新。13、 根据权利要求12所述的方法,其中所述监控是响应于指示用于中断的触发场景和处理程序地址的 用户级编程指令而执行的。14、 根据权利要求13所述的方法,其中 所述触发场景还包括一个或多个状态位的值的改变。15、 根据权利要求14所述的方法,其中所述一个或多个状态位是由与所述用户级编程指令相关联的掩 码指定的。16、 一种方法,包括 并发地执行多个协作线程;挂起所述多个协作线程中除第一线程以外的所有其它线程的执 行,以便所述第一线程能够原子地执行指令块;其中,所述挂起是由所述第一线程调用硬件机制的动作触发的;以及在所述第一线程完成所述指令块的原子执行之后,恢...
【专利技术属性】
技术研发人员:Q雅克布森,H王,J舍恩,G金雅,P哈默伦德,X邹,B比格比,S考舒基,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。