Path-sensitive analysis for reducing rollback overheads
Abstract
A mechanism is provided for path-sensitive analysis for reducing rollback overheads. The mechanism receives, in a compiler, program code to be compiled to form compiled code. The mechanism divides the code into basic blocks. The mechanism then determines a restore register set for each of the one or more basic blocks to form one or more restore register sets. The mechanism then stores the one or more register sets such that responsive to a rollback during execution of the compiled code. A rollback routine identifies a restore register set from the one or more restore register sets and restores registers identified in the identified restore register set.
- Inventors:
- Issue Date:
- Research Org.:
- International Business Machines Corp., Armonk, NY (United States)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1149605
- Patent Number(s):
- 8789025
- Application Number:
- 12/835,820
- Assignee:
- International Business Machines Corporation (Armonk, NY)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- DOE Contract Number:
- B554331
- Resource Type:
- Patent
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING
Citation Formats
O'Brien, John K.P., Wang, Kai-Ting Amy, Yamashita, Mark, and Zhuang, Xiaotong. Path-sensitive analysis for reducing rollback overheads. United States: N. p., 2014.
Web.
O'Brien, John K.P., Wang, Kai-Ting Amy, Yamashita, Mark, & Zhuang, Xiaotong. Path-sensitive analysis for reducing rollback overheads. United States.
O'Brien, John K.P., Wang, Kai-Ting Amy, Yamashita, Mark, and Zhuang, Xiaotong. Tue .
"Path-sensitive analysis for reducing rollback overheads". United States. https://www.osti.gov/servlets/purl/1149605.
@article{osti_1149605,
title = {Path-sensitive analysis for reducing rollback overheads},
author = {O'Brien, John K.P. and Wang, Kai-Ting Amy and Yamashita, Mark and Zhuang, Xiaotong},
abstractNote = {A mechanism is provided for path-sensitive analysis for reducing rollback overheads. The mechanism receives, in a compiler, program code to be compiled to form compiled code. The mechanism divides the code into basic blocks. The mechanism then determines a restore register set for each of the one or more basic blocks to form one or more restore register sets. The mechanism then stores the one or more register sets such that responsive to a rollback during execution of the compiled code. A rollback routine identifies a restore register set from the one or more restore register sets and restores registers identified in the identified restore register set.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Jul 22 00:00:00 EDT 2014},
month = {Tue Jul 22 00:00:00 EDT 2014}
}
Works referenced in this record:
Method for analyzing calls of application program by inserting monitoring routines into the executable version and redirecting calls to the monitoring routines
patent, May 1994
- Cline, David C.; Silverman, Andrew P.; Wymore, Farrell W.
- US Patent Document 5,313,616
Standby checkpoint to prevent data loss
patent, August 1996
- Crump, Dwayne T.; Pancoast, Steven T.; Benson, Paul H.
- US Patent Document 5,551,043
Memory update history storing apparatus and method for restoring contents of memory
patent, November 2000
- Masubuchi, Yoshio
- US Patent Document 6,148,416
System and method for performing path-sensitive value flow analysis on a program
patent, August 2006
- Das, Manuvir; Adams, Stephen R.; Dor, Nurit
- US Patent Document 7,089,537
Detecting reordered side-effects
patent, August 2007
- Yates, Jr., John S.; Reese, David L.; Van Dyke, Korbin S.
- US Patent Document 7,254,806
Self-optimizable code with code path selection and efficient memory allocation
patent, June 2009
- Dickenson, Marc A.
- US Patent Document 7,546,588
Programming language support for integrating undo and exception handling
patent, October 2009
- Shinnar, Avraham E.; Tarditi, David; Steensgaard, Bjarne
- US Patent Document 7,607,125
Reducing unnecessary software transactional memory operations on newly-allocated data
patent, December 2010
- Tarditi, David; Plesko, Mark Ronald
- US Patent Document 7,861,237
Implementing strong atomicity in software transactional memory
patent, January 2012
- Harris, Timothy L.
- US Patent Document 8,099,726
Methods and devices for recovering from initialization failures
patent-application, December 2006
- Buskens, Richard Wayne; Gonzalez, Oscar; Ren, Yansong
- US Patent Application 11/167188; 20060294507
Method, medium and apparatus storing and restoring register context for fast context switching between tasks
patent-application, June 2007
- Park, Jung-keun; Yim, Keun-soo; Kim, Woon-gee
- US Patent Application 11/637133; 20070136733
Compiler support for optimizing decomposed software transactional memory operations
patent-application, July 2007
- Tarditi, JR., David Read; Harris, Timothy Lawrence; Plesko, Mark Ronald
- US Patent Application 11/389451; 20070169030
Efficient placement of software transactional memory operations around procedure calls
patent-application, July 2007
- Harris, Timothy Lawrence
- US Patent Application 11/390549; 20070169031
Method for memory integrity
patent-application, August 2007
- Zimmer, Vincent J.; Rothman, Michael A.
- US Patent Application 11/349480; 20070186279
Method and system for providing context switch using multiple register file
patent-application, September 2007
- Lee, Jae Don; Yim, Keun Soo; Kim, Woon Gee
- US Patent Application 11/712998; 20070226474
Point in Time Rollback and Un-installation of Software
patent-application, June 2008
- Gokhale, Parag
- US Patent Application 11/615378; 20080155526
Compiler technique for efficient register checkpointing to support transaction roll-back
patent-application, July 2008
- Wang, Cheng; Wu, Youfeng
- US Patent Application 11/648486; 20080162990
Recovery From Nested Kernel Mode Exceptions
patent-application, February 2009
- Mavinakayanahalli, Ananth Narayan; Panchamukhi, Prasanna
- US Patent Application 11/830946; 20090037710
Contention management for a hardware transactional memory
patent-application, May 2009
- Biles, Stuart David; Blake, Geoffrey; Mudge, Trevor Nigel
- US Patent Application 12/149003; 20090133032
A virtual memory translation mechanism to support checkpoint and rollback recovery
conference, January 1991
- Bowen, Nicholas S.; Pradhan, Dhiraj K.
- Proceedings of the 1991 ACM/IEEE conference on Supercomputing - Supercomputing '91
Minimizing register usage penalty at procedure calls
journal, July 1988
- Chow, F. C.
- ACM SIGPLAN Notices, Vol. 23, Issue 7
A survey of rollback-recovery protocols in message-passing systems
journal, September 2002
- Elnozahy, E. N. (Mootaz); Alvisi, Lorenzo; Wang, Yi-Min
- ACM Computing Surveys, Vol. 34, Issue 3
Code Generation and Optimization for Transactional Memory Constructs in an Unmanaged Language
conference, March 2007
- Wang, Cheng; Chen, Wei-Yu; Wu, Youfeng
- International Symposium on Code Generation and Optimization (CGO'07)
Works referencing / citing this record:
Observation and analysis based code optimization
patent, November 2015
- Porras, Victor Leonel Hernandez; Lattner, Christopher Arthur; Chen, Jia-Hong
- US Patent Document 9,195,486
Assumption-based compilation
patent, September 2015
- Porras, Victor Leonel Hernandez; Lattner, Christopher Arthur; Chen, Jia-Hong
- US Patent Document 9,146,759