All ETDs from UAB

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.

Share

COinS