Techniques for the translation of MATLAB programs into Fortran 90
- 1 March 1999
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 21 (2), 286-323
- https://doi.org/10.1145/316686.316693
Abstract
This article describes the main techiques developed for FALCON's MATLAB-to-Fortran 90 compiler. FALCON is a programming environment for the development of high-performance scientific programs. It combines static and dynamic inference methods to translate MATLAB programs into Fortran 90. The static inference is supported with advanced value propagation techniques and symbolic algorithms for subscript analysis. Experiments show that FALCON's MATLAB translator can generate code that performs more than 1000 times faster than the interpreted version of MATLAB and substantially faster than commercially available MATLAB compilers on one processor of an SGI Power Challenge. Futhermore, in most cases we have tested, the compiler-generated code is as fast as corresponding hand-written programs.Keywords
This publication has 10 references indexed in Scilit:
- Parallel programming with PolarisComputer, 1996
- FALCON: A MATLAB interactive restructuring compilerPublished by Springer Science and Business Media LLC ,1996
- Templates for the Solution of Linear Systems: Building Blocks for Iterative MethodsPublished by Society for Industrial & Applied Mathematics (SIAM) ,1994
- Computer as thinker/doer: problem-solving environments for computational scienceIEEE Computational Science and Engineering, 1994
- Compiling nested data-parallel programs for shared-memory multiprocessorsACM Transactions on Programming Languages and Systems, 1993
- Efficiently computing static single assignment form and the control dependence graphACM Transactions on Programming Languages and Systems, 1991
- Constant propagation with conditional branchesACM Transactions on Programming Languages and Systems, 1991
- An APL CompilerPublished by Springer Science and Business Media LLC ,1988
- Program analysis and code generation in an APL/370 compilerIBM Journal of Research and Development, 1986
- Automatic data structure choice in a language of very high levelCommunications of the ACM, 1975