[发明专利]执行具有回滚由积极优化导致的变化的能力的积极代码优化无效
申请号: | 201180011671.2 | 申请日: | 2011-02-25 |
公开(公告)号: | CN102782644A | 公开(公告)日: | 2012-11-14 |
发明(设计)人: | M·K·格什温 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 付建军 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 执行 具有 积极 优化 导致 变化 能力 代码 | ||
1.一种数据处理系统(450)中的用于执行可执行代码(415)的方法,包括:
接收具有代码的一部分的可执行代码(415),对于代码的该部分,提供了代码的该部分(415)的积极编译代码版本(420)和保守编译代码版本(430);
在数据处理系统(450)的处理器(206)中执行(610)代码的该部分的积极编译代码版本(420);
确定(620)在积极编译代码版本(420)的执行期间是否发生异常条件;
响应于确定发生异常条件(620),回滚(630)代码的该部分(415)的状态的变化;以及
响应于回滚代码的该部分(415)的状态的变化,在数据处理系统(450)的处理器(206)中执行(660,780)保守编译代码版本(430)。
2.如权利要求1所述的方法,还包括:
产生关于代码的可执行部分(415)的积极编译代码版本(420)的执行是否可能导致异常条件发生的预测(720);以及
响应于指示如果执行积极编译代码版本(420)则可能发生异常条件的预测(720),在数据处理系统(450)的处理器(206)中执行保守编译代码版本(430)。
3.如权利要求1所述的方法,其中执行积极编译代码版本(420),作为由数据处理系统(450)的事务监视器(460)监视的单个事务。
4.如权利要求3所述的方法,其中:
确定(620)在积极编译代码版本(420)的执行期间是否发生异常条件包括由事务监视器(460)确定包括积极编译代码版本(420)的事务中止还是成功地提交,
响应于确定发生异常条件而回滚(630)代码的该部分(415)的状态的变化包括回滚包括积极编译代码版本(420)的事务,并且
所述异常条件引起事务的中止。
5.如权利要求3所述的方法,其中响应于回滚(630)代码的可执行部分(415)的状态的变化在数据处理系统(450)的处理器(206)中执行保守编译代码版本(430)包括:
与事务监视器(460)相关联地保持用于把积极编译代码版本(420)映射到保守编译代码版本(430)的数据结构(440);以及
响应于事务中止由事务监视器(460)基于积极编译代码版本(420)在该数据结构(440)中执行查找操作(650,770)以获得指向对应的保守编译代码版本(430)的指针。
6.如权利要求3所述的方法,还包括:
由事务监视器(460)在日志数据结构(470)中记录(640,760)中止的与积极编译代码版本(420)对应的事务;
基于日志数据结构(470)执行积极编译代码版本(420)的执行是否可能导致与积极编译代码版本(420)关联的事务中止的预测操作(720);以及
响应于积极编译代码版本(420)的执行可能导致关联的事务中止的预测,开始(660,780)执行保守编译代码版本(430)而非积极编译代码版本(420)。
7.如权利要求1所述的方法,其中所述积极编译代码版本(420)是以并行方式执行的代码的该部分(415)的向量化版本,并且其中保守编译代码版本(430)是以串行方式执行的标量代码版本。
8.一种包括存储有计算机可读程序的计算机可读存储介质(208,226,230)的计算机程序产品,其中该计算机可读程序当在数据处理系统(450)中执行时使数据处理系统(450):
接收具有代码的一部分的可执行代码(415),对于代码的该部分,提供了代码的该部分(415)的积极编译代码版本(420)和保守编译代码版本(430);
在数据处理系统(450)的处理器(206)中执行(610)代码的该部分的积极编译代码版本(420);
确定(620)在积极编译代码版本(420)的执行期间是否发生异常条件;
响应于确定发生异常条件(620),回滚(630)代码的该部分(415)的状态的变化;以及
响应于回滚代码的该部分(415)的状态的变化,在数据处理系统(450)的处理器(206)中执行(660,780)保守编译代码版本(430)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180011671.2/1.html,转载请声明来源钻瓜专利网。