A MATLAB subset to C compiler targeting embedded systems

dc.contributor.author João Bispo en
dc.contributor.author João Paiva Cardoso en
dc.date.accessioned 2018-01-16T15:18:15Z
dc.date.available 2018-01-16T15:18:15Z
dc.date.issued 2017 en
dc.description.abstract This paper describes MATISSE, a compiler able to translate a MATLAB subset to C targeting embedded systems. MATISSE uses LARA, an aspect-oriented programming language, to specify additional information and transformations to the input MATLAB code, for example, insertion of code for initialization of variables, and specification of types and shapes of variables. The compiler is being developed bearing in mind flexibility, multitarget and multitoolchain support, allowing for the generation of several implementations in C from the same reference code in MATLAB. In this paper, we also present a number of techniques being employed in MATLAB to C compilation, such as element-wise mapping operations, matrix views, weak types, and intrinsics. We validate these techniques using MATISSE and a set of representative benchmarks. More specifically, we evaluate the compiler with a set of 31 benchmarks using an embedded system board and a desktop computer. The results show speedups up to 1.8x by employing information provided by LARA aspects, when compared with C code generated without additional user information. When compared with the execution time of the original code running on MATLAB, the execution time of the generated C code achieved a geometric mean speedup of 13x. Copyright (c) 2016 John Wiley & Sons, Ltd. en
dc.identifier.uri http://repositorio.inesctec.pt/handle/123456789/6383
dc.identifier.uri http://dx.doi.org/10.1002/spe.2408 en
dc.language eng en
dc.relation 6527 en
dc.relation 5550 en
dc.rights info:eu-repo/semantics/openAccess en
dc.title A MATLAB subset to C compiler targeting embedded systems en
dc.type article en
dc.type Publication en
Files
Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
Name:
P-00M-BFX.pdf
Size:
582.92 KB
Format:
Adobe Portable Document Format
Description: