Data processing: software development – installation – and managem – Software program development tool – Translation of code
Reexamination Certificate
2006-10-27
2011-11-29
Dao, Thuy (Department: 2192)
Data processing: software development, installation, and managem
Software program development tool
Translation of code
C717S140000, C717S169000
Reexamination Certificate
active
08069440
ABSTRACT:
A method and mechanism for producing and executing self-steering program code. A method comprises analyzing program code and identifying portions which may be amenable to optimization. Having identified such a portion of code, at least one optimized version of the identified code is added to the program code. Additionally, a selection mechanism is added to the program code which is configured to select between two or more versions of the portion of code during runtime. The modified program code is then compiled with the added optimized version and the selection mechanism. During execution, monitoring of behavior of the code may be enabled or disabled. Based upon such monitored behavior, a different version of the code may be selected for execution. Various optimized versions may be selected for execution in a manner which takes advantage of the current behavior of the program.
REFERENCES:
patent: 6651246 (2003-11-01), Archambault et al.
patent: 6654954 (2003-11-01), Hicks
patent: 6880045 (2005-04-01), Pong et al.
patent: 6938130 (2005-08-01), Jacobson et al.
patent: 7395531 (2008-07-01), Eichenberger et al.
patent: 7426724 (2008-09-01), Kilgard et al.
patent: 7530069 (2009-05-01), Kawahara et al.
patent: 7543282 (2009-06-01), Chou
patent: 7818729 (2010-10-01), Plum et al.
patent: 7853934 (2010-12-01), Partamian
patent: 2004/0049667 (2004-03-01), McCormick et al.
patent: 2006/0026575 (2006-02-01), Cabillic et al.
patent: 2006/0026580 (2006-02-01), Cabillic et al.
patent: 2007/0050762 (2007-03-01), Chen et al.
patent: 2008/0163185 (2008-07-01), Goodman
“Design and evaluation of dynamic optimizations for a Java just-in-time compiler”, Suganuma et al., Jul. 2005, pp. 732-785, <http://delivery.acm.org/10.1145/1080000/1075386/p732-suganuma.pdf>.
“Compiler optimization of embedded applications for an adaptive SoC architecture”, Hardnett et al., Oct. 2006, pp. 312-322, <http://delivery.acm.org/10.1145/1180000/1176798/p312-hardnett.pdf>.
“Dynamic code management: improving whole program code locality in managed runtimes”, Huang et al., Jun. 2006, pp. 133-143, <http://delivery.acm.org/10.1145/1140000/1134779/p133-huang.pdf>.
“ACME: adaptive compilation made efficient”, Cooper et al., Jul. 2005, pp. 69-77, <http://delivery.acm.org/10.1145/1070000/1065921/p69-cooper.pdf>.
Song, Y., et al; “Design and Implementation of a Compiler Framework for Helper Threading on Multi-Core Processors;” IEEE PACT 2005, (Sep. 2005); pp. 99-109.
Damron, P., et al; “Hybrid Transactional Memory”; ASPLOS XII; San Jose, CA (2006); http://www.princeton.edu/˜asplos06/tprogram.html.
Su, E., et al; “Compiler Support of the Workqueuing Execution Model for Intel SMP Architectures”; Fourth European Workshop on OpenMP (EWOMP), (2002).
Zhong, H., et al; “Uncovering Hidden Loop Level Parallelism in Sequential Applications”; In Proc. of the 14th International Symposium on High-Performance Computer Architecture; (2008).
Goebel Kurt J.
Kalogeropulos Spiros
Song Yonghong
Tirumalai Partha P.
Dao Thuy
Meyertons Hood Kivlin Kowert & Goetzel P.C.
Oracle America Inc.
Rankin Rory D.
LandOfFree
Adaptive code through self steered execution does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Adaptive code through self steered execution, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Adaptive code through self steered execution will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-4310889