| Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the Conference on Programming Language Design and Implementation, pages 293-304, 1999. |
....tailor optimizations to the current execution environment. Such an approach, typically referred to as feedback directed optimization, not only instructs the optimizer what to optimize, but also specifies how the method should be optimized based on the behavior of the application. Several systems [26, 35, 34] have shown that performance can be improved substantially by exploiting invariant runtime values; however, these systems were not fully automatic and relied on programmer directives to identify regions of code to be optimized. Many researchers (ex. 37, 40, 31, 18] have focused on performing ....
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In SIGPLAN '99 Conference on Programming Language Design and Implementation, pages 293--304, May 1999.
....to stage a program in an ML like language. The staging annotations of Fabius are based upon the type systems devised by Frank Pfenning and Rowan Davies [20, 19] Other than MetaML, Fabius is the only dynamic code generator that types object level code. The UW Dynamic Compilation Project. DyC [34,6,35] is a C based dynamic compilation system. In DyC regions of code are marked for specialization, and variables in those regions are declared either dynamic or static. An analysis then determines which code can be compiled at compile time, and which code must be deferred for run time compilation. ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN '99 Conference on Programming Language Design and Implementation, pages 293-304, Atlanta, Georgia, May 1-4, 1999.
....what to optimize, but also specifies how the method should be optimized. By observing and optimizing the common execution patterns of the executing program, a system performing feedback directed optimization compiler has the potential to outperform a traditional static compiler. Several systems [45, 59, 58, 26] have shown that performance can be substantially improved by exploiting invariant runtime values; however, these systems were not fully automatic and relied on programmer directives to identify regions of code to be optimized. There exists a large body of work on collecting profiling information ....
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In SIGPLAN '99 Conference on Programming Language Design and Implementation, pages 293--304, May 1999.
....in a high level language and generate specialized programs in the same language. They have been successful in the optimization of various programs, such as interpreters, scientific application programs, and graphical application programs[4, 13, 20] Run time specialization (RTS) techniques[10, 12, 18, 22] e#ciently perform partial evaluation at run time (1) by constructing a specializer (or a generating extension) for each source program at compile time and (2) by directly generating native machine code at run time. The drastically improved specialization To appear in Proceedings of Second ....
....n 1) as an argument. It eventually receives the result of the recursive call, which should be x x 1 , and finally returns x x x 1 by appending the received result to x . Run time specialization techniques e#ciently specialize programs by generating specialized programs at machine code level[10, 12, 15, 18, 22, 29]. Given a source program and binding time information, an RTS system e# ciently generates specialized programs at run time in the following way. It first performs BTA on the source program, similar to compile time specialization systems. It then compiles dynamic expressions into fragments of ....
[Article contains additional citation context not shown here]
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimization in DyC. In PLDI'99, 1999.
....profiling information that is used to trigger reoptimization of frequently executed code at higher levels. Self [19] uses a similar adaptive optimization scheme. Staged dynamic compilers postpone a portion of compilation until runtime, when code can be specialized based on runtime values [11, 17, 24, 25, 16]. These systems usually focus on spending as little time as possible in the dynamic compiler, performing extensive offline pre computations to avoid needing any intermediate representation at runtime. API less dynamic optimization systems include Dynamo [4] for PA RISC; Wiggins Redstone [12] ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '99), May 1999.
....neither of these mechanisms is flexible enough to specify the immutability properties discussed in this paper. The C pragma feature [15] is a notable mechanism for providing source level annotations. Source code annotations were also used heavily in previous work on dynamic compilation, e.g. [11]. Past work on static analysis and detection of immutability properties (e.g. 20] is relevant to our framework in two important ways. First, as discussed in Section 3.3, static analysis can be used as the first stage of verification of immutability properties. Second, immutability assertions ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In SIGPLAN '99 Conference on Programming Language Design and Implementation, pages 293--304, May 1999.
....profiling information that is used to trigger reoptimization of frequently executed code at higher levels. Self [21] uses a similar adaptive optimization scheme. Staged dynamic compilers postpone a portion of compilation until runtime, when code can be specialized based on runtime values [11, 19, 27, 28, 18]. These systems usually focus on spending as little time as possible in the dynamic compiler, performing extensive offline pre computations to avoid needing any intermediate representation at runtime. Dynamic instrumentation can be used to build runtime code analyzers and, to some degree, runtime ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '99), May 1999.
....linear solvers with response times on the order of several minutes up to over an hour. We concentrate our efforts on providing feedback to a programmer quickly. A number of approaches address dynamic optimizations through binary translation and just in time compilation techniques for native code [27, 1, 8, 29, 12]. The main thrust of these techniques is program transformation based on knowledge about taken execution paths, such as trace scheduling. The transformations include the reallocation of registers and loop transformations (such as code motion and unrolling) to name a few. These efforts are ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers. An evaluation of staged run-time optimizations in dyc. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 293--304, June 1999.
....and volatility of the execution environment. Besides improving language designs, there has also been extensive work on finding better compiling techniques to provide e#ective adaptations for software systems and to e#ciently support a wide spectrum of hardware platform and computing resources [6, 5] that change dynamically. However, compiler based program adaptation and optimization techniques are powerful but limited if the optimization involves changing the functional behavior of the system. These optimization tasks include adaptations to many domain specific characteristics, such as state ....
B. Grant M. Philipose M. Mock C. Chambers S.J. Eggers. An Evaluation of Staged Run-time Optimizations in DyC. Conference on Programming Language Design and Implementation, May 1999.
....25 is considered dynamic as soon as it is dynamic in any part of the program, including exception handling. C Mix also consumes more code space, because it eagerly replicates code to avoid problems in binding time analysis. In contrast to Tempo and C Mix, which operate on ANSI C programs, DyC [23] and C [15] are C based languages that incorporate annotations to assist binding time analysis to enable partial evaluation. DyC caches compiled code to improve the performance of dynamic specialization. Other staged programming research projects use functional programming languages, such as ML. ....
Grant, B., M. Philipose, M. Mock, C. Chambers, and S.J. Eggers. An Evaluation of Staged Run-time Optimizations in DyC. in Conference on Programming Language Design and Implementation. 1999.
....since the overheads are often large. Runtime dependence testing can easily be incorporated as a technique into the Polaris ADAPT infrastructure. ADAPT could then dynamically determine where to apply the technique profitably. Much work has also been done on dynamic compilation and code generation [11, 12, 13, 1, 14, 15, 16]. This work has primarily focused on efficient runtime generation and specialization of code sections that are identified through user inserted code or directives. To reduce the time spent in code generation, optimizations are usually staged by using compilers that are specialized to the part of ....
....focused on efficient runtime generation and specialization of code sections that are identified through user inserted code or directives. To reduce the time spent in code generation, optimizations are usually staged by using compilers that are specialized to the part of the program being optimized [11]. We attempt to minimize the need for specialized dynamic compilers by removing code generation from the critical execution path of a program. Plezbert and Cytron [17] have proposed continuous compilation to overlap the just in time compilation of Java applications with their interpretation. ....
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proc. of the SIGPLAN '99 Conf. on Program Language Design and Implementation, May 1999.
....applications to cooperate, yielding and taking processors according to their parallel behavior. The approaches discussed above selected from previously generated code, or modified program execution through parameterization. Much work has also been done on dynamic compilation and code generation [19, 20, 21, 7, 8, 9, 10]. This work has primarily focused on e#cient runtime generation and specialization of code sections that are identified through user inserted code or directives. Dynamic compilation usually falls directly in the application s critical path. To reduce the time spent in code generation, ....
....that are identified through user inserted code or directives. Dynamic compilation usually falls directly in the application s critical path. To reduce the time spent in code generation, optimizations are staged by using compilers that are specialized to the part of the program being optimized [19]. Work has also been done to collect binary program traces and to optimize these traces during program execution. The HP Dynamo project [11] has shown significant results using such a scheme. The traces collected by Dynamo extend beyond basic blocks and subroutine boundaries, allowing the runtime ....
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proc. of the Design and Implementation, pages 293--304, Atlanta, GA, May 1999.
....for various domains including emulation of one architecture on another. Dynamic compilation employs numerous techniques relevant to software dynamic optimization. Dynamic compilation is used both for interpreted languages as just in time compilation [2, 17, 10, 14] and for compiled languages [13, 8]. Other related elds include link time optimization [18, 7] which shares with dynamic optimization the fact that it optimizes binary code, and lowoverhead pro ling [1, 11] which is crucial in a dynamic optimization system for quickly identifying important regions of code. 7 Conclusions We ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '99), May 1999.
....These approaches involve linear solvers with response times on the order of several minutes up to over an hour. We concentrate our e orts on providing feedback to a programmer quickly. A number of approaches address dynamic optimizations through just in time compilation techniques for native code [2, 9, 23, 12]. The main thrust of these techniques is program transformation based on knowledge about taken execution paths, such as trace scheduling. The transformations include the reallocation of registers and loop transformations (such as code motion and unrolling) to name a few. These e orts are ....
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers. An evaluation of staged run-time optimizations in dyc. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 293-304, June 1999.
No context found.
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the Conference on Programming Language Design and Implementation, pages 293-304, 1999.
No context found.
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. Eggers, An Evaluation of Staged Run-Time Optimizations in DyC. Implementation, May 1999, pp. 293-304. 25
No context found.
Grant, B., Philipose, M., Mock, M., Chambers, C., and Eggers, S. J. An evaluation of staged run-time optimizations in dyc. In Proceedings of the ACM SIGPLAN 1999.
No context found.
GRANT, B., PHILIPOSE, M., MOCK, M., CHAMBERS, C., AND EGGERS, S. J. An evaluation of staged run-time optimizations in dyc. In Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation (May 1999), ACM Press, pp. 293--304.
No context found.
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the Conference on Programming Language Design and Implementation, pages 293--304, 1999.
No context found.
Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN'99 Conference on Programming Language Design and Implementation, pages 293--304, 1999.
No context found.
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In PLDI '99: Programming Language Design and Implementation, pages 293--304, 1999.
No context found.
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proceedings of the ACM SIGPLAN '99 Conference on Programming Language Design and Implementation (PLDI-99), pages 293--304, May 1999.
No context found.
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proc. PLDI '99, pages 293--304, 1999.
No context found.
B. Grant, M. Philipose, M. Mock, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proc. PLDI '99, pages 293--304, 1999.
No context found.
B. Grant, M. Philiposc, M. Mock, C. Chambers, S. Eggors, An Evaluation of Staged Run-time Optimizations in DyC, in: Proc. ACM SIGPLAN Conf. On Programming Language Design and Implementation (PLDI), 1999.
First 50 documents Next 50
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