Scalable cross-file inlining through locality-based...

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S140000, C717S145000

Reexamination Certificate

active

10699067

ABSTRACT:
One embodiment disclosed relates to a method of compiling a computer program from a plurality of files of source code. An inline analysis determines which call sites in the plurality of files to make inline. An inline transformation performs the inlining within currently opened files. The transformer dynamically determines the order of inlines independent of the analyzer by taking into account the disk input-output pressure during compilation. The resulting inline order minimizes the input and output of files from and to disk respectively by considering the inline affinity between files and maintains the best run-time performance by preserving the dependences between call sites. During the inline transformation, a determination of which files to open and close is made in dependence on an affinity weighting between the files. The affinity and the dependence relationships are continuously updated in order to generate the best transformation ordering among call sites that ensures compile-time scalability and improved run-time performance.

REFERENCES:
patent: 5428793 (1995-06-01), Odnert et al.
patent: 5555417 (1996-09-01), Odnert et al.
patent: 5740443 (1998-04-01), Carini
patent: 5857105 (1999-01-01), Ayers et al.
patent: 5920723 (1999-07-01), Peyton, Jr. et al.
patent: 5978588 (1999-11-01), Wallace
patent: 6195793 (2001-02-01), Schmidt
patent: 6292940 (2001-09-01), Sato
patent: 6971091 (2005-11-01), Arnold et al.
patent: 7058561 (2006-06-01), Kumar
patent: 7120906 (2006-10-01), Stephenson et al.
patent: 7146606 (2006-12-01), Mitchell et al.
patent: 2002/0066081 (2002-05-01), Duesterwald et al.
patent: 2005/0097528 (2005-05-01), Chakrabarti et al.
Dolby, Julian; Chien, Andrew A; “An Evaluation of Automatic Object Inline Allocation Techniques”, p. 1-20, 1998 ACM retrieved Feb. 5, 2007.
Hwu, Wen-mei W.; Chang, Pohua P.; “Inline Function Expansion for Compiling C Programs”, p. 246-257, 1989 ACM, retrieved Feb. 5, 2007.
Lindgren, Thomas; Jonsson, Christer; “The Design and Implementation of a High-Performance Erlang Compiler”, p. 1-11, retrieved from scholar.google.com search Feb. 5, 2007.
Sundaresan, Vijay; Hendren, Laurie; Razafimahefa, Chrislain; Vallee-Rai, Raja; Lam, Patrick; Gagnon, Etienne; Godin, Charles; “Practical Virtual Method Call Resolution for Java”, p. 264-280, 2000 ACM, retrieved Feb. 5, 2007.
Chang, Pohua P; Mahlke, Scott A; Chen, William Y; Hwu, Wen-Mei W; “Profile guided Automatic Inline Expansion for C Programs”, p. 349-369, Software Practice and Experience, vol. 22(5), May 1992, retrieved Jun. 18, 2007.
Chen, William Y; Chang, Pohua P; Conte, Thomas M; Hwu, Wen-mei W; “The Effect of Code Expanding Optimizations on Instruction Cache Design”, p. 1-36, 1992, retrieved from citeseer.com on Jun. 18, 2007.
Andrew Ayers, et al., “Aggressive InLining”, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1997, pp. 134-145.
Andrew Ayers, et al., “Scalable Cross-Module Optimization”, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1998, pp. 301-312.
Pohua P. Chang, t al., “Profil -guid d Automatic InLine Expansion for C Programs”, 1992, Software-Practice and Exp ri nc vol. 22 (5), pp. 349-369.
J. Eugene Ball, “Predicting the Effects of Optimization on a Procedure Body”, ACM SIGPLAN, 1979, pp. 214-220.
Owen Kaser, et al., “Evaluating InLining Techniques”, Aug. 14, 1996, pp. 1-15.
Matthew Arnold, et al., “A Comparative Study of Static and Profile-Based Heuristics for InLining”, ACM, 2000, pag s 52-64.
Peng Zhao, et al., “To InLine or Not to InLine? Enhanced InLining Decisions”, to appear at the 16th Workshop on Language and Compilers for Parallel Computing (LCPC03), Oct. 2003.
Toshio Suganuma, et al., “An Empirical Study of Method InLining for a Java Just-In-Time Compiler”, Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium, Aug. 2002.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Scalable cross-file inlining through locality-based... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Scalable cross-file inlining through locality-based..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Scalable cross-file inlining through locality-based... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3874820

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.