45 citations found. Retrieving documents...
Detlefs, D. & Agesen, O. (1999), Inlining of virtual methods, in `13th European Conference on Object-Oriented Programming', pp. 258--278.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Online Feedback-Directed Optimization of Java - Arnold, Hind, Ryder (2002)   (3 citations)  (Correct)

....there are many (mostly positive) interactions between the optimizations. Code reordering provided reasonable speedups for several of the benchmarks. Splitting provides a large performance boost for mtrt, which makes heavy use of accessor methods, many of which are inlined using a runtime guard [22]. After splitting, many of these guards can be identified as redundant and eliminated. Using edge profiles to improve inlining decisions showed Recall that the base Jikes RVM system already performs loop unrolling, static and adaptive inlining, and code reordering. This graph shows the ....

David Detlefs and Ole Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, June 1999.


Online Profiling And Feedback-Directed Optimization Of Java - Arnold (2002)   (1 citation)  (Correct)

....there are many (mostly positive) interactions between the optimizations. Code reordering provided reasonable speedups for several of the benchmarks. Splitting provides a large performance boost for mtrt, which makes heavy use of accessor methods, many of which are inlined using a runtime guard [40]. After splitting, many of these guards can be identified as redundant and eliminated. Recall that the base Jikes RVM system already performs loop unrolling, static and adaptive inlining, and code reordering. This graph shows the performance improvement of modifying these optimizations to take ....

David Detlefs and Ole Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, June 1999.


Dynamic Optimistic Interprocedural Analysis: a Framework.. - Pechtchanski, Sarkar (2001)   (3 citations)  (Correct)

....if needed. If invalidation recompilation becomes necessary for a method invocation that has not completed, then techniques such as stack rewriting [17, 18] or code patching [20] are necessary to ensure that the remainder of the method invocation is correctly executed. In preexistence analysis [13], stack rewriting is avoided by restricting analysis to preexisting objects, so that invalidation due to dynamic class loading triggers recompilation but does not require stack rewriting. In this paper, we address the problem of dynamic optimistic interprocedural analysis. Our goal is to build on ....

D. Detlefs and O. Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, 1999.


Design, Implementation and Evaluation of Adaptive Recompilation .. - Fink, Qian (2003)   (1 citation)  (Correct)

....based on speculative program invariants [4, 12] Despite these benefits, OSR has not yet appeared in production VMs, with the notable exception of Sun s HotSpot Server Compiler [12] due to the perceived engineering complexity. Indeed, some have presented pre existence based transformations [7] specifically to enable limited forms of optimizations enabled by OSR invalidation, but without the corresponding engineering headache. Perhaps the most daunting OSR engineering challenge concerns the transition to new compiled code. For this transition, the system must construct a new stack ....

....both unguarded inlining of final and static methods and guarded inlining of non final virtual methods. In addition, the compiler exploits preexistence to safely perform unguarded inlining of some invocations of non final virtual methods without requiring stack frame rewriting on invalidation [7]. load elimination, global code motion, and common subexpression elimination. The adaptive optimization system drives recompilation decisions based on the estimated cost and benefit of compiling each method. The system initially compiles each method with the baseline compiler, and as the program ....

[Article contains additional citation context not shown here]

D. Detlefs and O. Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, June 1999.


Exploiting Prolific Types for Memory Management and.. - Shuf, Gupta.. (2002)   (4 citations)  (Correct)

....that all children of in the class hierarchy are prolific. Dynamic class loading [21] is another feature of Java that forces us to do compile time analysis more conservatively. Again, the problem is similar to the problem with inlining of virtual methods in the presence of dynamic class loading [17, 36]. Due to dynamic class loading, a program can load a new class that is non prolific but subclasses a prolific class, unless the prolific class is declared final. It is possible to use the techniques for inlining virtual methods in the presence of dynamic class loading, like preexistence analysis ....

....Due to dynamic class loading, a program can load a new class that is non prolific but subclasses a prolific class, unless the prolific class is declared final. It is possible to use the techniques for inlining virtual methods in the presence of dynamic class loading, like preexistence analysis [17] and extant analysis [36] to improve the effectiveness of the test for a type being definitely prolific. For example, using extant analysis, if we create a specialized method in which the reference to is known to be extant (i.e. pointing to an existing object) 36] the test for being ....

D. Detlefs and O. Agesen. Inlining of virtual methods. In Proc. of 13th ECOOP, pages 258--278, 1999.


Supporting Binary Compatibility with Static Compilation - Yu, Shao, Trifonov (2002)   (2 citations)  (Correct)

....(where the guard checks for the object type at run time) to handle the scenario where the inlining is invalidated by further class loading. When such a scenario occurs, run time compilation has to be performed. There has been also work on techniques for inlining virtual methods more efficiently [6, 15, 25]. Typically, static compilers use global or whole program analysis [4] to do inlining or devirtualization. However, without the ability to perform compilation at runtime, they assume that no changes will be made to classes referred to by the compiled code. Hence, they do not comply with the JLS. ....

D. Detlefs and O. Agesen. Inlining of virtual methods. In ECOOP'99, LNCS 1628, pages 258--278, 1999.


Space- and Time-Efficient Implementation of the Java Object.. - Bacon, Fink, Grove (2002)   (4 citations)  (Correct)

....on codes where the TIB field is frequently accessed, the indexed object model pays a much higher price than the bit stealing object model. For rat: rt: where the indexed model suffers almost 8 slowdown, the TIB accesses are primarily due to guarded inlining performed with the method test [9]; on IA32 Jikes RVM inlines these methods with a code patching guard [14] and thus does not access the TIB. Alternatively, the inlining could be performed with a type test which simply compared the TIB indexes instead of a method test, which would also eliminate the additional cost. The 1.2 ....

DETLEFS, D., AND AGESEN, O. Inlining of virtual methods. In Thirteenth European Conference on Object-Oriented Programming (1999), vol. 1628 of Lecture Notes in Computer Science, Springer Verlag, pp. 258478.


OoLaLa: Transformations for Implementations of Matrix.. - Luján, Freeman, Gurd (2002)   (1 citation)  (Correct)

....numRows( numColumns( numRows( numColumns( for (j=1; j =numColumns; j ) end for end for element(i,j) element(i,j) for (i=1; i =numRows; i ) Thread norm1 Figure 11: Sequence diagram for jjAjj 1 implemented at MA level with A dp df. Method inlining [CG94, GDGC95, DGC95, Fer95, AH96, BS96, DA99, IKY 00, SHR 00] can be applied to eliminate the invocations by inserting the code of the invoked methods into the invoking methods. After applying method inlining, 9 the statements inside the nested loop appear as shown in Figure 12. An analysis of the loops reveals that, for every ....

....jndx represent the row and column indices, respectively. The element at the k th position in the other array, value, is the matrix element. See an example in Figure 3. 9 We present method inlining with guarded class tests for the sake of clarity and because, although it is not the most ecient [DA99, IKY 00] it generates the most general code. 11 if ( a instanceOf DenseProperty ) first guard double aux; try if ( a.storage instanceof DenseFormat ) second guard aux = a.storage.array[ j 1 ) a.storage.numRows i 1 ] else aux = a.storage.element( i, j ) catch( ....

David Detlefs and Ole Agesen. Inlining of virtual methods. In Rachid Guerraoui, editor, Proceedings of the 13th European Conference on Object-Oriented Programming { ECOOP'99, volume 1628 of Lecture Notes in Computer Science, pages 258-278. Springer-Verlag, 1999.


Specialization Patterns - Schultz, Lawall, Consel (2000)   (7 citations)  (Correct)

....as direct calls or virtual calls. Virtual calls defeat branch prediction (and thereby instruction pipelining) and inhibit inlining, blocking subsequent traditional intra procedural compiler optimizations [6, 15] Thus, many compilers go to great lengths to replace virtual calls by direct calls [1, 13, 14, 26]; some even using constrained specialization techniques [11, 20] such as customization [7] Even so, virtual calls can only be completely eliminated when static analysis can safely determine that the class of the receiver object never changes. Most design patterns distribute functionality among ....

D. Detlefs and O. Agesen. Inlining of virtual methods. In ECOOP'99 [16], pages 258--278.


A Generational Mostly-concurrent Garbage Collector - Printezis, Detlefs (2000)   (15 citations)  Self-citation (Detlefs)   (Correct)

....machine developed by Sun Microsystems. This virtual machine has been previously known as the Exact VM , and has been incorporated into products; for example, the Java 2 SDK (1.2.1 05) Production Release, for the Solaris operating environment. 1 It employs an optimising just in time compiler [10] and a fast synchronisation mechanism [2] More relevantly, it features high performance exact (i.e. non conservative [7] also called precise) memory management [1] The memory system is separated from the rest of the virtual machine by a well defined GC Interface [30] This interface allows ....

D. Detlefs and O. Agesen. Inlining of Virtual Methods. In Proceedings of ECOOP'99, pages 258--278, Lisbon, Portugal, June 1999.


Strength Reduction for Loop-Invariant Types - Phung Hua Nguyen   (Correct)

No context found.

Detlefs, D. & Agesen, O. (1999), Inlining of virtual methods, in `13th European Conference on Object-Oriented Programming', pp. 258--278.


Method Inlining, Dynamic Class Loading, and Type Soundness - Glew, Palsberg (2004)   (Correct)

No context found.

David Detlefs and Ole Agesen. Inlining of virtual methods. In Proceedings of ECOOP'99, European Conference on Object-Oriented Programming, pages 258--278. Springer-Verlag (LNCS 1628), 1999.


Automatic Program Specialization for Java - Schultz, Lawall, Consel (2003)   (2 citations)  (Correct)

No context found.

DETLEFS,D.AND AGESEN, O. 1999. Inlining of virtual methods. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP'99). Lecture Notes in Computer Science, vol. 1628, R. Guerraoui, Ed. Springer-Verlag, Lisbon, Portugal, 258--278.


Practicing JUDO: Java™ under Dynamic Optimizations - Cierniak, Lueh, Stichnoth   (Correct)

No context found.

D. Detlefs and O. Agesen, Inlining of Virtual Methods. ECOOP 1999, pp. 258-278.


Adaptive Online Context-Sensitive Inlining - Hazelwood, Grove (2003)   (6 citations)  (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, June 1999.


Connectivity-Based Garbage Collection - Hirzel (2004)   (2 citations)  (Correct)

No context found.

David Detlefs and Ole Agesen. Inlining of virtual methods. In European Conference for Object-Oriented Programming (ECOOP), 1999.


On the Conditions Necessary for Removing Abstraction.. - Lujan, Freeman, Gurd (2004)   (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of virtual methods. In Proceedings of the 13th European Conference on Object-Oriented Programming -- ECOOP'99, volume 1628 of Lecture Notes in Computer Science, pages 258--278. Springer-Verlag, 1999.


To Inline or Not to Inline? - Enhanced Inlining Decisions   (Correct)

No context found.

David Detlefs and Ole Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming (ECOOP), June 1999.


XRTJ: An Extensible Distributed High-Integrity Real-Time.. - Hu, Kwon, Wellings (2003)   (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of Virtual Methods. ECOOP' 99 Conference Proceedings, Springer Verlag LNCS 1628:258--277, 1999.


Oolala - From Numerical Linear Algebra To Compiler Technology For .. - Moreno (2002)   (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of virtual methods. In Proceedings of the 13th European Conference on Object-Oriented Programming -- ECOOP'99, volume 1628 of Lecture Notes in Computer Science, pages 258-- 278. Springer-Verlag, 1999.


A Survey of Adaptive Optimization in Virtual Machines - Arnold, Fink, Grove, Hind.. (2004)   (Correct)

No context found.

D. Detlefs and O. Agesen, "Inlining of virtual methods," in 13th European Conference on Object-Oriented Programming, June 1999, pp. 258--278.


To Inline or Not to Inline? - Enhanced Inlining Decisions   (Correct)

No context found.

David Detlefs and Ole Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming (ECOOP), June 1999.


Thin Guards: A Simple and Effective Technique for Reducing the .. - Arnold, Ryder (2002)   (3 citations)  (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, 1999.


Type-Safe Method Inlining - Glew, Palsberg (2002)   (4 citations)  (Correct)

No context found.

David Detlefs and Ole Agesen. Inlining of virtual methods. In Thirteenth European Conference on Object-Oriented Programming (ECOOP), pages 258--278. SpringerVerlag (LNCS 1628), 1999.


Adaptive Online Context-Sensitive Inlining - Hazelwood, Grove (2003)   (6 citations)  (Correct)

No context found.

D. Detlefs and O. Agesen. Inlining of virtual methods. In 13th European Conference on Object-Oriented Programming, June 1999.

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC