| P. Andersen, "Partial Evaluation Applied to Ray Tracing," DIKU Research Report 95/2, DIKU, 1995. |
.... first developed in the sixties for use in LISP [103] and later spread to or was independently developed in the areas of artificial intelligence applications [15] compiling and compiler generation [15, 45, 44, 52, 76, 90, 92, 94] string and pattern matching [42, 57, 126, 80] computer graphics [10, 110], numerical computation [16] circuit simulation [11] and hard real time systems [115] There was a major step forward in partial evaluation in the eighties with the MIX partial evaluator [91] The MIX partial evaluator was different than earlier efforts because it was self applicable one ....
P. H. Andersen. Partial evaluation applied to ray tracing. DIKU Research Report 95/2, DIKU, University of Copenhagen, Denmark, 1995.
....every time he wants to perform specialization) MetaML and our work have one important technique in common: the sharing of objects between standard and partial evaluation corresponds to cross stage persistence in MetaML. Specialization of ray tracing was first done by Mogensen [22] Andersen [1] specialized an already efficient ray tracer written in C. The realistic application of specialization in graphics is also found in [15] 10 Conclusion This paper described our first step towards the integration of partial evaluation into standard interpretation. The two main issues in this ....
Andersen, P. H. "Partial Evaluation Applied to Ray Tracing," Software Engineering in Scientific Computing, pp. 78--85, DIKU report D-289 (1996).
....to remove runtime checks. Estimating optimistically that static type checking makes programs three times faster, we still lose by more than ten times. Currently, we have no clue how to bridge this gap. 5 Related work Specialization of ray tracing was first done by Mogensen[11] Andersen[2] specialized an already efficient ray tracer written in C. We did the same experiment using Scheme extended with pe. Thanks to the presence of pe, we could achieve specialization simply by inserting pe at an appropriate place. The realistic application of specialization in graphics is found in ....
Andersen, P. H. "Partial Evaluation Applied to Ray Tracing," Software Engineering in Scientific Computing, pp. 78--85, DIKU report D-289 (1996).
....because of the complexity of such a task. Recently, some tools have been developed to automatically specialize programs [1, 3, 11, 4, 25, 26, 10] Applications of such tools are emerging in a number of fields, including scientific code [4, 5, 12] systems software [19, 29] computer graphics [21, 2], with already very promising results. In essence, these automatic tools are transformation engines: they implement a set of program transformations which may be directly accessible to the programmer [18] or generated by some program analyses based on the usage context of the program [3, 11, 26, ....
P. Andersen. Partial evaluation applied to ray tracing. DIKU Research Report 95/2, DIKU, University of Copenhagen, Denmark, 1995.
....evaluation was initially studied in the context of functional programming languages. Since then, partial evaluation techniques and tools have been developed for a large variety of languages [23, 9, 5, 20] logic, imperative, object oriented and have been applied with encouraging results [6, 16, 2]. Currently, there exist several tools able to treat real life, widely used languages such as C [4, 1, 11] These tools can perform specialization either at compile time (with respect to statically available constants) or even during program execution (with respect to run time constants) 12] 2 ....
P. Andersen. Partial evaluation applied to ray tracing. DIKU Research Report 95/2, DIKU, University of Copenhagen, Denmark, 1995.
....prediction [19] weakly biased branches are largely ignored by modern optimization techniques. 2. 1 Phases in branch execution Our first few examples focus on two conditional branches that occur in the shade procedure from ray.c of rayshade, the C ray tracer developed by Peter Holst Andersen [2]. Figure 1 lists the code associated with these two branches, which we label b35 and b36. This code looks much like the code associated with the other conditional branches in ray.c, and thus there is not any obvious syntactic clue alerting us to the following interesting program behavior. Figure ....
P. Andersen. "Partial Evaluation Applied to Ray Tracing," unpublished technical report, January 1995.
....to truth values (SPECint 92) fixed to floating point encoder li XLISP interpreter (SPECint 95) SPECint 95 train input m88ksim microprocessor simulator (SPECint 95) Dhrystone benchmark rend a.k. a rayshade, raytracer developed by Andersen for experiments with run time partial evaluation [2] rend scene 1 Table 1: Deco benchmark suite 52 Secondly, we had a preference for benchmarks that spend a great deal of their execution time in code which appears acyclic from an intraprocedural standpoint. As we discussed briefly in Chapter 3, if an application exhibits such behavior, it is ....
P. H. Andersen, "Partial Evaluation Applied to Ray Tracing," January, 1995.
....intersection routine with respect to a scene, producing a specialized ray tracer parameterized only by the viewpoint. Mogensen [10] partially evaluated a simple ray tracer coded in Lisp and got a two fold speedup; when shading was added to the ray tracer, the speedup increased to 8 times. Andersen [2] performed a similar experiment in C, and achieved speedups of 1.8 with a code size blowup of 15 90 times. Other researchers used somewhat more application specific specialization techniques. Hanrahan s surface compiler [6] symbolically simplifies input equations defining a general algebraic ....
Andersen, Peter Holst. Partial Evaluation Applied to Ray Tracing. Unpublished manuscript, October 1994.
.... languages [4, 9, 13, 36] Both its theoretical and practical aspects have led to major advances of the technology [10, 22, 35] Researchers have illustrated the potentials of this technology by applying it to various problems such as compiler generation [1, 15, 26, 29, 30] graphics applications [6, 25, 34], and scientific computing [7, 8, 24, 31] Ultimately, just like a compiler, a partial evaluator is a tool. As such, research in the field should also aim at developing systems capable of exploiting specialization opportunities in applications written by programmers that are not experts in partial ....
P.H. Andersen. Partial evaluation applied to ray tracing. DIKU Research Report 95/2, DIKU, University of Copenhagen, Denmark, 1995.
....ray tracing application, specialization with respect to a fixed scene but unknown ray can give speed up even for rendering single pictures. Speed ups of more than 6 have been reported for a simple raytracer [73] For a more realistic ray tracer, speed ups in the range 1. 5 to 3 have been reported [10]. The speed up is gained from several sources: the ray object intersection routine is specialized for each object and the (highly parametrized) shading (colouring) function is specialized for each object. Furthermore, the representation of the scene is converted to procedural form. Figure 1 is an ....
P.H. Andersen. Partial evaluation applied to ray tracing. DIKU Research Report 95/2, DIKU, University of Copenhagen, Denmark, 1995.
No context found.
P. Andersen, "Partial Evaluation Applied to Ray Tracing," DIKU Research Report 95/2, DIKU, 1995.
No context found.
P. H. Andersen. Partial evaluation applied to ray tracing. In W. Mackens and S. Rump, editors, Software Engineering im Scienti c Computing, pages 78-85. Vieweg, 1996.
No context found.
P. H. Andersen, "Partial evaluation applied to ray tracing." Unpublished, 1993. [DART-l91].
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