Skip to Main content Skip to Navigation
Theses

Performance analyses and code transformations for MATLAB applications

Abstract : MATLAB is a computing environment with an easy programming language and a vast library of functions commonly used in Computation Science and Engineering (CSE) for fast prototyping. However, some features of its environment, such as its dynamic language or interactive style of programming affect how fast the programs can execute. Current approaches to improve MATLAB programs either translate the code to faster static languages like C or Fortran, or apply code transformations to MATLAB code systematically without considering their impact on the performance. In this thesis, we fill this gap by developing techniques for the analysis and codetransformation of MATLAB programs in order to improve their performance. More precisely, we analyse and model the behaviour of the black-box MATLAB environment by measuring the execution characteristics of programs on CPU. From the resulting data, we formalise a static model which predicts the type and order of instructions scheduled by the Just-In-Time (JIT)compiler. This model allows us to propose several code transformations which increase the performance of MATLAB programs by influencing how the JIT compiler generates the machine code. The obtained results demonstrate the practical benefits of the presented methodology.
Complete list of metadatas

Cited literature [165 references]  Display  Hide  Download

https://pastel.archives-ouvertes.fr/tel-02516727
Contributor : Abes Star :  Contact
Submitted on : Tuesday, March 24, 2020 - 8:53:11 AM
Last modification on : Friday, April 3, 2020 - 2:15:43 AM

File

2019PSLEM063_archivage.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-02516727, version 1

Citation

Patryk Kiepas. Performance analyses and code transformations for MATLAB applications. Computation and Language [cs.CL]. PSL Research University, 2019. English. ⟨NNT : 2019PSLEM063⟩. ⟨tel-02516727⟩

Share

Metrics

Record views

43

Files downloads

12