Optimizing MATLAB through Just-In-Time Specialization

被引:0
|
作者
Chevalier-Boisvert, Maxime [1 ]
Hendren, Laurie [1 ]
Verbrugge, Clark [1 ]
机构
[1] McGill Univ, Sch Comp Sci, Montreal, PQ, Canada
来源
关键词
INFERENCE; LANGUAGE; SYSTEM;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Scientists are increasingly using dynamic programming languages like MATLAB for prototyping and implementation. Effectively compiling MATLAB raises many challenges due to the dynamic and complex nature of MATLAB types. This paper presents a new JIT-based approach which specializes and optimizes functions on-the-fly based on the current types of function arguments. A key component of our approach is a new type inference algorithm which uses the run-time argument types to infer further type and shape information, which in turn provides new optimization opportunities. These techniques are implemented in McVM, our open implementation of a MATLAB virtual machine. As this is the first paper reporting on McVM, a brief introduction to McVM is also given. We have experimented with our implementation and compared it to several other MATLAB implementations, including the Mathworks proprietary system, McVM without specialization, the Octave open-source interpreter and the Mc For static compiler. The results are quite encouraging and indicate that specialization is an effective optimization McVM with specialization outperforms Octave by a large margin and also sometimes outperforms the Mathworks implementation.
引用
收藏
页码:46 / 65
页数:20
相关论文
共 50 条
  • [1] Just-in-time value specialization
    de Assis Costa, Igor Rafael
    Santos, Henrique Nazare
    Alves, Pericles Rafael
    Quintao Pereira, Fernando Magno
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2014, 40 (02) : 37 - 52
  • [2] Guided just-in-time specialization
    Lima, Caio
    Cezar, Junio
    Leobas, Guilherme Vieira
    Rohou, Erven
    Quintao Pereira, Fernando Magno
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2020, 185
  • [3] Just-in-Time Value Specialization
    Costa, Igor
    Alves, Pericles
    Santos, Henrique Nazare
    Quintao Pereira, Fernando Magno
    [J]. PROCEEDINGS OF THE 2013 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION (CGO), 2013, : 302 - 312
  • [4] TASTYTRUFFLE: Just-in-Time Specialization of Parametric Polymorphism
    D'Souza, Matt
    You, James
    Lhotak, Ondrej
    Prokopec, Aleksandar
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (OOPSLA): : 1561 - 1588
  • [5] Portable Just-in-Time Specialization of Dynamically Typed Scripting Languages
    Williams, Kevin
    McCandless, Jason
    Gregg, David
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2010, 5898 : 391 - 398
  • [6] Just-in-time smoothing through batching
    Kubiak, Wieslaw
    Yavuz, Mesut
    [J]. M&SOM-MANUFACTURING & SERVICE OPERATIONS MANAGEMENT, 2008, 10 (03) : 506 - 518
  • [7] Tango: An Optimizing Compiler for Just-In-Time RTL Simulation
    Tine, Blaise-Pascal
    Yalamanchili, Sudhakar
    Kim, Hyesoon
    [J]. PROCEEDINGS OF THE 2020 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE 2020), 2020, : 157 - 162
  • [8] Trace-based Just-in-Time Type Specialization for Dynamic Languages
    Gal, Andreas
    Eich, Brendan
    Shaver, Mike
    Anderson, David
    Mandelin, David
    Haghighat, Mohammad R.
    Kaplan, Blake
    Hoare, Graydon
    Zbarsky, Boris
    Orendorff, Jason
    Ruderman, Jesse
    Smith, Edwin
    Reitmaier, Rick
    Bebenita, Michael
    Chang, Mason
    Franz, Michael
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (06) : 465 - 478
  • [9] Trace-based Just-in-Time Type Specialization for Dynamic Languages
    Gal, Andreas
    Eich, Brendan
    Shaver, Mike
    Anderson, David
    Mandelin, David
    Haghighat, Mohammad R.
    Kaplan, Blake
    Hoare, Graydon
    Zbarsky, Boris
    Orendorff, Jason
    Ruderman, Jesse
    Smith, Edwin
    Reitmaier, Rick
    Bebenita, Michael
    Chang, Mason
    Franz, Michael
    [J]. PLDI'09 PROCEEDINGS OF THE 2009 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2009, : 465 - 478
  • [10] Quality Criteria for Just-in-Time Requirements: Just Enough, Just-in-Time?
    Heck, Petra
    Zaidman, Andy
    [J]. 1ST INTERNATIONAL WORKSHOP ON JUST-IN-TIME RE (JIT RE 2015), 2015, : 1 - 4