System Modelling and Optimization 1996
DOI: 10.1007/978-0-387-34897-1_14
|View full text |Cite
|
Sign up to set email alerts
|

Binding-time analysis applied to mathematical algorithms

Abstract: Our goal is to incorporate state-of-the-art partial evaluation in a library of general-purpose algorithms -in particular, mathematical algorithms -in order to allow the automatic creation of efficient, special-purpose programs. The main goal is efficiency: a specialized program often runs significantly faster than its generic version.This paper shows how a binding-time analysis can be used to identify potential sources for specialization in mathematical algorithms. The method is surprisingly simple and effecti… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
8
0

Year Published

1996
1996
2005
2005

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 15 publications
(9 citation statements)
references
References 5 publications
0
8
0
Order By: Relevance
“…Our overall approach can best be described as a combination of two approaches: hand-writing a code generator (cogen) suitable for multi-level specialization [49,50] and creating an embedded domain-specific language (EDSL) [51,52]. Our approach, using staging, monads and functors, seems to permit an extensible set of aspects and appears flexible enough for iterative improvement in the design.…”
Section: Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…Our overall approach can best be described as a combination of two approaches: hand-writing a code generator (cogen) suitable for multi-level specialization [49,50] and creating an embedded domain-specific language (EDSL) [51,52]. Our approach, using staging, monads and functors, seems to permit an extensible set of aspects and appears flexible enough for iterative improvement in the design.…”
Section: Methodsmentioning
confidence: 99%
“…Even though the Aldor compiler can frequently optimize away a lot of abstraction overhead, it does not provide any guarantees that it will do so, unlike our approach. We should also mention early work [49] on automatic specialization of mathematical algorithms. Although it can eliminate some overhead from a very generic implementation (e.g.…”
Section: Related and Future Workmentioning
confidence: 99%
“…(6) Computer-placed program annotations to guide transformation, for example, binding-time annotation [Bondorf 1991;Consel 1993;Consel and Danvy 1993;Glenstrup and Jones 1996;Glück et al 1995;Jones et al 1993;Hatcliff et al 1999;Thiemann 1997]. After annotation, transformation is fully automatic, requiring no human interaction.…”
Section: On the Meaning Of "Automatic" In Program Transformationmentioning
confidence: 99%
“…-Scientific computing [Berlin and Weise 1990;Glück et al 1995]; -Extending functionality of existing languages by adding binding-time options [Grant et al 2000]; -Functional languages [Bondorf 1991;Consel 1993;Hughes 1996;Launchbury 1991;Thiemann 1999]; -Logic programming languages [Gallagher and Bruynooghe 1990;Gallagher 1993;Leuschel and Bruynooghe 2002;Lloyd and Shepherdson 1991]; -Compiling or other transformation by specializing interpreters [Birkedal and Welinder 1994;Bondorf 1991;Glenstrup et al 1999;Jones et al 1993;Jones 1996;Mogensen 1988]; -Optimization of operating systems, for example, remote procedure calls, device drivers, etc. [Consel and Noël 1996;McNamee et al 2001;Poletto et al 1999];…”
Section: Partial Evaluation and Program Generationmentioning
confidence: 99%
“…PE [11] is an automatic program transformation technique which allows the partial execution of a program when only some of its input data are available, and it also "specializes" the program with respect to partial knowledge of the data. In [9], PE is incorporated in a library of general-purpose mathematical algorithms in order to allow the automatic generation of fast, special-purpose programs from generic algorithms. The results for the FFT show speedup factors between 1.83 and 5.05 if the size N of the input is available, where N ranges from 16 and 512.…”
Section: Introductionmentioning
confidence: 99%