[发明专利]用于响应于事务执行生成跟踪数据的装置和方法有效
申请号: | 201680012576.7 | 申请日: | 2016-02-11 |
公开(公告)号: | CN107278296B | 公开(公告)日: | 2021-08-17 |
发明(设计)人: | 迈克尔·约翰·威廉姆斯;约翰·迈克尔·霍利;斯蒂芬·帝斯特霍斯特;理查德·罗伊·格里森斯怀特 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06F11/34 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 李晓冬 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 响应 事务 执行 生成 跟踪 数据 装置 方法 | ||
提供了一种包括处理电路的装置,处理电路执行包括多个程序指令的事务,该多个程序指令执行来生成对状态数据的更新,处理电路在事务在没有冲突的情况下完成时提交更新,并且在多个程序指令的执行期间生成跟踪控制信号。处理电路在程序指令的执行期间使用至少一个资源。事务跟踪电路响应于跟踪控制信号来生成跟踪项。响应于跟踪控制信号指示至少一个资源的使用水平在程序指令的执行期间已发生变化,事务跟踪电路生成指示至少一个资源的使用水平的至少一个跟踪项。
技术领域
本技术涉及数据处理系统。具体而言,本技术涉及支持事务(transaction)的数据处理系统的领域。
背景技术
可以提供支持事务的数据处理系统,其中,多个程序指令被推测性地执行从而生成对状态数据的更新,若事务在没有冲突的情况下完成,则该更新被提交。由于更新仅在事务在没有冲突的情况下完成时才提交,因此,这些更新在本文被称为推测性更新,直到它们被提交为止。在事务结束之前的任意时间,事务都可能因为冲突而被中止,即在未结束的情况下完成,从而导致数据处理系统倒退或返回到事务开始之前的状态。因此,该“倒退”可以在以下情况下发生,即,在作为事务的部分被执行的指令和在别处执行的指令之间发生冲突。在事务期间,推测地更新的状态被存储在事务存储器中。若未发生冲突并且事务未被中止,则在事务的结束,事务被“提交”,此时推测性状态(即事务状态)替代数据处理系统的实际状态。
这类事务可用于例如辅助使用共享存储器的多线程处理,其中,可以允许使用共享存储器内的数据值的事务并行进行,这种并行进行依赖于在存储器访问之间出现冲突时避免提交推测性更新的能力。在大多数情况下,这类冲突不会出现,因此,并行处理在不需要支持更严格机制的开销(例如,存储器锁定的使用)的情况下有效地进行,但当发生冲突时有可能恢复就好像对状态数据的推测性更新尚未被提交一样。
发明内容
从第一示例布置的角度看,提供了一种装置,包括处理电路和事务跟踪电路,处理电路用于执行包括多个程序指令的事务,该多个程序指令执行来生成对状态数据的更新,处理电路若事务在没有冲突的情况下完成则提交更新,并且在多个程序指令的执行期间生成跟踪控制信号,处理电路在程序指令的执行期间使用至少一个资源,事务跟踪电路用于响应于跟踪控制信号来生成跟踪项,响应于跟踪控制信号指示该至少一个资源的使用水平在程序指令的执行期间已发生变化,事务跟踪电路生成指示该至少一个资源的使用水平的至少一个跟踪项。
根据第二示例配置,提供了一种生成跟踪项的方法,包括以下步骤:执行包括多个程序指令的事务以生成对状态数据的更新;若事务在没有冲突的情况下完成则提交更新;在多个程序指令的执行期间生成跟踪控制信号,其中,程序指令的执行使用至少一个资源;以及响应于跟踪控制信号生成跟踪项,其中,响应于跟踪控制信号指示该至少一个资源的使用水平在程序指令的执行期间已发生变化,生成指示该至少一个资源的使用水平的至少一个跟踪项。
根据第三示例布置,提供了一种装置,包括:用于执行包括多个程序指令的事务以生成对状态数据的更新的装置;用于若事务在没有冲突的情况下完成则提交更新的装置;用于在多个程序指令的执行期间生成跟踪控制信号的生成装置,其中,程序指令的执行使用至少一个资源;以及用于响应于跟踪控制信号生成跟踪项的装置,其中,响应于跟踪控制信号指示该至少一个资源的使用水平在程序指令的执行期间已发生变化,用于生成的生成装置生成指示该至少一个资源的使用水平的至少一个跟踪项。
附图说明
进一步参考附图中示出的实施例来描述本发明,这些实施例仅作为示例目的,在附图中:
图1示意性地示出了包括事务的程序指令流;
图2A是示意性地示出事务的执行的流程图;
图2B是示意性地示出嵌套事务(nested transaction)的执行的流程图;
图3是示意性地示出根据一个实施例的装置的图示;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680012576.7/2.html,转载请声明来源钻瓜专利网。