Title :
Compile-time disambiguation of MATLAB types through concrete interpretation with automatic run-time fallback
Author :
Shei, Chun-Yu ; Chauhan, Arun ; Shaw, Sidney
Author_Institution :
Comput. Sci., Indiana Univ., Bloomington, IN, USA
Abstract :
While the popularity of MATLAB for scientific and engineering applications is unabated, its poor performance compared to traditional languages, such as Fortran or even C, for a general class of problems continues to impede its deployment in full-scale simulations and data analysis. To ameliorate performance, we have been developing a MATLAB and Octave compiler that leverages the interpreter to implement some of the optimizations as concrete partial evaluations. Specifically, this paper describes constant propagation and type inference, using a high-level tree-transformation tool that has built-in support for solving dataflow problems. The approach allows propagation and folding of constants in cases that would be impractically difficult otherwise. The idea, when extended to infer variable types, provides a natural way to disambiguate types at compile time while leaving the fallback code in place for run-time evaluation. Experimental evaluation on pieces of real MATLAB code demonstrates the effectiveness of the approach.
Keywords :
data flow analysis; inference mechanisms; mathematics computing; program compilers; MATLAB types; Octave compiler; automatic run-time fallback; compile-time disambiguation; concrete partial evaluations; data analysis; dataflow problem solving; full-scale simulations; high-level tree-transformation tool; Analytical models; Concrete; Data analysis; Data engineering; Electron microscopy; Graphical user interfaces; Image analysis; MATLAB; Programming profession; Runtime;
Conference_Titel :
High Performance Computing (HiPC), 2009 International Conference on
Conference_Location :
Kochi
Print_ISBN :
978-1-4244-4922-4
Electronic_ISBN :
978-1-4244-4921-7
DOI :
10.1109/HIPC.2009.5433203