Recognition and selection of idioms for code optimization
@article{Snyder2004RecognitionAS, title={Recognition and selection of idioms for code optimization}, author={Lawrence Snyder}, journal={Acta Informatica}, year={2004}, volume={17}, pages={327-348} }
SummaryIdioms are frequently occurring expressions that programmers use for logically primitive operations for which no primitive construct is available in the language. For example, in ALGOL-60 the expression abs(X − X ÷ 2 × 2) is idiomatic for parity of X. With optimization as a motive, two problems, idiom recognition and selection, are defined. Recognition is solved in O(n log n) time (worst case), O(n) time (average case) on a uniform cost RAM. Selection is solved in O(n) time. Ambiguity is…
4 Citations
KernelFaRer: Replacing Native-Code Idioms with High-Performance Library Calls
- Computer ScienceACM Trans. Archit. Code Optim.
- 2021
KernelFaRer (Kernel Find & Replacer), an idiom recognizer implemented entirely in the existing LLVM compiler framework, is introduced, which replaces existing GEMM and SYR2K idioms with computations performed by BLAS, Eigen, MKL and BLIS.
Integrating code generation and peephole optimization
- Computer ScienceActa Informatica
- 2004
A grammar-driven peephole optimization algorithm that is particularly well suited to attributed-parsing code generators that corrects interrelated phase-ordering problems and produces a faster and smaller compiler back-end.
Pattern Driven Automatic Parallelization
- Computer Science
- 2004
This paper describes a knowledge based system for automatic parallelization of a wide class of sequential numeric codes operating on vectors and dense matrices and for execution on distributed memory…
Program Procedure Pattern Mining Model for Legacy Code
- Computer Science2018 4th International Conference on Universal Village (UV)
- 2018
A candidate pattern classification method is proposed to classify the candidate patterns into structure candidate patterns and structure relation candidate patterns using the data flow constraint, and finally the program procedure patterns are obtained.
References
SHOWING 1-9 OF 9 REFERENCES
Tentative compilation: A design for an APL compiler
- Computer ScienceAPL '79
- 1979
The overall design of an APL compiler which achieves significant savings of temporary storage is outlined. A graphical intermediate representation for APL expressions is described. Transformations…
Compiler Construction for Digital Computers
- Computer Science
- 1971
The techniques involved in writing compilers for high-level languages such as FORTRAN or PL/1, as well as semantic routines, are described.
Linear unification
- MathematicsSTOC '76
- 1976
A unification algorithm is described which tests a set of expressions for unifiability and which requires time and space which are only linear in the size of the input.
The Art of Computer Programming
- Engineering, Physics
- 1968
The arrangement of this invention provides a strong vibration free hold-down mechanism while avoiding a large pressure drop to the flow of coolant fluid.
The APL idiom list
- Yale University Computer Science Technical Report
- 1977
APL programming guide: Vector optimizations
- White Plains, New York: IBM DPD Scientific Marketing Report
- 1978
Computational logic: The unification computation
- Machine Intelligence,
- 1971