Advisory Committee Chair
Peter M Pirkelbauer
Advisory Committee Members
Purushotham Bangalore
Marjan Mernik
Document Type
Thesis
Date of Award
2016
Degree Name by School
Master of Science (MS) College of Arts and Sciences
Abstract
Matlab is a popular language among researchers and scientists. It allows mathematical and scientific calculations to be formulated in a way that is close to mathematical notation which makes developing prototypes easier and faster. Our preliminary results show that computation intensive programs written in Matlab tend to be slower than equivalent programs written in C++. C++ being a compiled language exposes advanced optimization opportunities that will help speed up sequential code as compared to Matlab. Hence, there is a need to translate Matlab code to languages like C/C++ for maximum performance. C++ also provides libraries to run a program in heterogeneous architectures like co-processors, GPUs and in distributed environments. Although Matlab makes it possible to run Matlab codes in parallel and in GPUs using its parallel toolbox, we would like to utilize C++ to squeeze out maximum performance and gain more portability. With C++ we gain more flexibility and portability to run in any architectures and environments due to the ubiquity of C++ compilers. Manual translation to C++ is one option but it is tedious, cost inefficient and can introduce errors. In this thesis we introduce a tool to automatically compile/translate Matlab programs to C++. The code generated will rely on existing numerical libraries. We would like researchers to continue writing codes in Matlab but also have the added benefit of being able to run their translated code much faster and possibly on heterogeneous architectures.
Recommended Citation
Khadka, Sujan, "Fastnumerics: Compiling Matlab To C++" (2016). All ETDs from UAB. 2133.
https://digitalcommons.library.uab.edu/etd-collection/2133