Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/645678.663957guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

A Matlab Just-In-time Compiler

Published: 10 August 2000 Publication History

Abstract

This paper describes our experience with MaJIC, a just-intime compiler for MATLAB. In the recent past, several compiler projects claimed large performance improvements when processing MATLAB code. Most of these projects are static compilers suited for batch processing; MaJIC is a just-in-time compiler. The compilation process is transparent to the user. This impacts the modus operandi of the compiler, resulting in a few interesting analysis techniques. Our experiments with MaJIC indicate large speedups when compared to the interpreter, and reasonable performance when compared to static compilers.

References

[1]
P. Banerjee, N. Shenoy, A. Choudhary, S. Hauck, C. Bachmann, M. Chang, M. Haldar, P. Joisha, A. Jones, A. Kanhare, A. Nayak, S. Periyacheri, and M. Walkden. Match: A matlab compiler for configurable computing systems. Technical Report CPDC-TR-9908-013, Center for Parallel and Distributed Computing, Northwestern University, Aug. 1999.
[2]
W. Blume and R. Eigenmann. Symbolic range propagation. In Proceedings of the 9th International Parallel Processing Symposium, April 1995.
[3]
F. Bodin. MENHIR: High performance code generation for MATLAB. http://www.irisa.fr/caps/PEOPLE/Francois/.
[4]
P. Bonzini. The GNU Smalltalk Homepage.
[5]
L. DeRose and D. Padua. Techniques for the translation of matlab programs into fortran 90. ACM Transactions on Programming Languages and Systems (TOPLAS), 21(2):285-322, March 1999.
[6]
L. A. DeRose. Compiler Techniques for MATLAB Programs. Technical Report UIUCDCS-R-96-1996, Department of Computer Science, University of Illinois, 1996.
[7]
L. P. Deutsch and A. Schiffman. Efficient Implementation of the Smalltalk-80 System. In Proceedings of the 11th Symposium on the Principles of Programming Languages, Salt Lake City, UT, 1984.
[8]
J. W. Eaton. Octave homepage. http://bevo.che.wisc.edu/octave/.
[9]
D. R. Engler. VCODE: a portable, very fast dynamic code generation system. In Proceedings of the ACM SIGPLAN Conference on Programming Languages Design and Implementation (PLDI '96), Philadelphia PA, May 1996.
[10]
R. Gupta. Optimizing array bounds checks using flow analysis. ACM Letters on Programming Languages and Systems, 2(1-4):135-150, 1993.
[11]
F. G. Gustavson. Recursion leads to automatic variable blocking for dense linearalgebra algorithms. IBM Journal of Research and Development, 41(6):737-753, November 1997.
[12]
G.-H. Hwang and J. K. Lee. An array operation synthesis scheme to optimize fortran 90 programs. In PPOPP '95, pages 112-122, Santa Clara, USA, 1995.
[13]
Mathtools inc homepage. www.mathtools.com.
[14]
Mathworks Inc. homepage. www.mathworks.com.
[15]
Matmarks homepage. http://polaris.cs.uiuc.edu/matmarks/matmarks.html.
[16]
V. Menon and K. Pingali. High-level semantic optimization of numerical codes. In 1999 ACM Conference on Supercomputing. ACMS IGARCH, June 1999.
[17]
V. Menon and A. E. Trefethen. MultiMATLAB: Integrating MATLAB with highperformance parallel computing. In Proceedings of Supercomputing '97, 1997.
[18]
S. S. Muchnick and N. D. Jones. Program Flow Analysis: Theory and Application. Prentice Hall, 1981.
[19]
M. Poletto, D. R. Engler, and M. F. Kaashoek. tcc: A system for fast, flexible, and high-level dynamic code generation. In ACM SIGPLAN '97 Conference on Programming Language Design and Implementation (PLDI), pages 109-121, Las Vegas, Nevada, May 1997.
[20]
R. C. Whaley and J. J. Dongarra. Automatically tuned linear algebra software. In Supercomputing '98, 1998.

Cited By

View all
  • (2019)A stage-polymorphic IR for compiling MATLAB-style dynamic tensor expressionsProceedings of the 18th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3357765.3359514(34-47)Online publication date: 21-Oct-2019
  • (2018)A Survey on Compiler Autotuning using Machine LearningACM Computing Surveys10.1145/319797851:5(1-42)Online publication date: 18-Sep-2018
  • (2014)Dynamic page sharing optimization for the R languageACM SIGPLAN Notices10.1145/2775052.266109450:2(79-90)Online publication date: 14-Oct-2014
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
LCPC '00: Proceedings of the 13th International Workshop on Languages and Compilers for Parallel Computing-Revised Papers
August 2000
382 pages

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 10 August 2000

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2019)A stage-polymorphic IR for compiling MATLAB-style dynamic tensor expressionsProceedings of the 18th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3357765.3359514(34-47)Online publication date: 21-Oct-2019
  • (2018)A Survey on Compiler Autotuning using Machine LearningACM Computing Surveys10.1145/319797851:5(1-42)Online publication date: 18-Sep-2018
  • (2014)Dynamic page sharing optimization for the R languageACM SIGPLAN Notices10.1145/2775052.266109450:2(79-90)Online publication date: 14-Oct-2014
  • (2014)Dynamic page sharing optimization for the R languageProceedings of the 10th ACM Symposium on Dynamic languages10.1145/2661088.2661094(79-90)Online publication date: 20-Oct-2014
  • (2011)Typing aspects for MATLABProceedings of the sixth annual workshop on Domain-specific aspect languages10.1145/1960496.1960501(13-18)Online publication date: 21-Mar-2011
  • (2010)McFLATProceedings of the 23rd international conference on Languages and compilers for parallel computing10.5555/1964536.1964537(1-15)Online publication date: 7-Oct-2010

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media