利用用于聚结内存事务的指示的方法和系统的制作方法_4

文档序号:8395768阅读:来源:国知局
执行过渡到 非事务执行而没有省略,就像第一指令没有前缀XACQUIRE -样。
[0068] RTM 嵌套
[0069] 程序员可以嵌套RTM区域直到【具体实施方式】MAX_RTM_NEST_COUNT。逻辑处理器内 部地跟踪该嵌套计数,但是该计数对软件不可用。XBEGIN指令使得该嵌套计数递增而XEND 指令使得该嵌套计数递减。仅仅在嵌套计数变为零时,该逻辑处理器尝试提交如果嵌套计 数超过MAX_RTM_NEST_COUNT,则出现事务中止。
[0070] 嵌套的HLE和RTM
[0071] HLE和RTM提供两个替换软件接口给公共事务执行能力。当HLE和RTM被一起嵌 套时,例如HLE在RTM内或者RTM在HLE内,事务处理性能为专用实施方式的。不过,在所 有情况下,该实施方式将维持HLE和RTM语义。一种实施方式在被用于RTM区域内时可以 选择忽略HLE提示,并且在RTM指令被用于HLE区域内时可以导致事务中止。在后一种情 况下,因为处理器将重新执行该HLE区域而不实际进行省略,并且随后执行RTM指令,因此 从事务性到非事务性执行的过渡无缝进行。
[0072] 中止状态定义
[0073] RTM使用EAX寄存器将中止状态通讯告知软件。在RTM中止之后,EAX寄存器具有 如下定义。
[0074] 表 1
[0075]
【主权项】
1. 一种利用用于聚结最外面事务的指示的计算机系统,该聚结使得针对第一事务的内 存存储数据到内存的提交在第二事务的事务执行(TX)末端处进行,该计算机系统包括: 存储器;W及 处理器,与所述内存通信,其中该计算机系统被配置为执行一种方法,所述方法包括: 由处理器执行一个或多个聚结指令,用于控制多个最外面事务的聚结; 基于执行一个或多个聚结指令,由处理器确定两个最外面事务是否将被聚结;W及 基于确定两个最外面事务将被聚结,由处理器将包括在多个最外面事务中的至少两个 最外面事务聚结。
2. 根据权利要求1所述的计算机系统,其中所述一个或多个聚结指令在被执行时表示 哪个最外面事务能够被聚结。
3. 根据权利要求1所述的计算机系统,其中所述一个或多个聚结指令包括与最外面事 务的事务开始指令相关联的聚结前缀W及与最外面事务的事务开始指令相关联的聚结变 量中的一个或两者。
4. 根据权利要求1所述的计算机系统,其中所述一个或多个聚结指令包括与最外面事 务的事务结束指令相关联的聚结前缀W及与最外面事务的事务结束指令相关联的聚结变 量中的一个或两者。
5. 根据权利要求1所述的计算机系统,所述方法还包括: 由处理器执行设置-事务-聚结-模式(STCM)指令,该STCM指令使得处理器进入STCM模式,其中进入STCM模式表示W下至少之一 :(i)随后的聚结指令被启用W便使得事务将 被聚结、(ii)能够存在于两个将被聚结的最外面事务之间的指令的最大数量、W及(iii) 能够存在于两个将被聚结的最外面事务之间的指令的类型.
6. 根据权利要求1所述的计算机系统,所述方法还包括: 执行重置-事务-聚结-模式(RTCM)指令,该RTCM指令使得处理器从STCM模式退出, 其中从STCM模退出导致W下一个或多个:(i)停止执行随后的聚结指令、(ii)修改存在于 两个最外面事务之间的指令的数量、W及(iii)修改存在于两个最外面事务之间的指令的 类型。
7. 根据权利要求1所述的计算机系统,其中所述确定两个最外面事务是否将被聚结还 包括: 基于被执行的所述一个或多个聚结指令,设置阔值;W及 基于该种聚结是否将超过所述阔值来确定两个最外面事务是否将被聚结。
8. 根据权利要求7所述的计算机系统,其中基于确定所述聚结将超过表示W下之一的 所述阔值,针对给定最外面事务禁止聚结具体最外面事务: 由将被聚结的最外面事务所展现的暂停、在将被聚结的两个最外面事务之间可能存在 的指令的最大数量、处理被聚结的最外面事务所需的最大时间段、处理被聚结的最外面事 务所需的资源量、能够被聚结最外面事务的最大数量、聚结导致中止状态的特定最外面事 务的可容许实例的数量、W及先前经历过中止的被聚结事务的历史。
9. 一种利用用于聚结最外面内存事务的指示的方法,该聚结使得针对第一事务的内存 存储数据到内存的提交在第二事务的事务执行(TX)末端处进行,该方法包括: 由处理器执行一个或多个聚结指令,用于控制多个最外面事务的聚结; 基于执行一个或多个聚结指令,由处理器确定两个最外面事务是否将被聚结;w及 基于确定两个最外面事务将被聚结,由处理器将包括在多个最外面事务中的至少两个 最外面事务聚结。
10. 根据权利要求9所述的方法,其中所述一个或多个聚结指令在被执行时表示哪个 最外面事务能够被聚结。
11. 根据权利要求9所述的方法,其中所述一个或多个聚结指令包括与最外面事务的 事务开始指令相关联的聚结前缀W及与最外面事务的事务开始指令相关联的聚结变量中 的一个或两者。
12. 根据权利要求9所述的方法,其中所述一个或多个聚结指令包括与最外面事务的 事务结束指令相关联的聚结前缀W及与最外面事务的事务结束指令相关联的聚结变量中 的一个或两者。
13. 根据权利要求9所述的计算机系统,所述方法还包括: 由处理器执行设置-事务-聚结-模式(STCM)指令,该STCM指令使得处理器进入STCM模式,其中进入STCM模式表示W下至少之一 :(i)随后的聚结指令被启用W便使得事务将 被聚结、(ii)能够存在于两个将被聚结的最外面事务之间的指令的最大数量、W及(iii) 能够存在于两个将被聚结的最外面事务之间的指令的类型。
14. 根据权利要求9所述的方法,所述方法还包括: 执行重置-事务-聚结-模式(RTCM)指令,该RTCM指令使得处理器从STCM模式退出, 其中从STCM模退出导致W下一个或多个:(i)停止执行随后的聚结指令、(ii)修改存在于 两个最外面事务之间的指令的数量、W及(iii)修改存在于两个最外面事务之间的指令的 类型。
15. 根据权利要求9所述的方法,其中由处理器确定两个最外面事务是否将被聚结还 包括: 基于被执行的所述一个或多个聚结指令,由处理器设置阔值;W及 基于该种聚结是否将超过所述阔值,由处理器确定两个最外面事务是否将被聚结。
【专利摘要】本发明涉及一种事务内存系统,其利用用于聚结最外面事务的指示的计算机系统,该聚结使得针对第一事务的内存存储数据到内存的提交在第二事务执行(TX)末端处进行。事务内存系统的处理器执行一个或多个聚结指令,用于控制多个最外面事务的聚结。基于执行一个或多个聚结指令,处理器确定两个最外面事务是否将被聚结。基于确定两个最外面事务将被聚结,处理器将包括在多个最外面事务中的至少两个最外面事务聚结。
【IPC分类】G06F9-50
【公开号】CN104714848
【申请号】CN201410681945
【发明人】F.Y.巴萨巴, M.K.格施温德, V.萨拉普拉, 岑中龙
【申请人】国际商业机器公司
【公开日】2015年6月17日
【申请日】2014年11月24日
【公告号】US20150169359
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1