A Parallelizing Matlab Compiler Framework and Run time for Heterogeneous Systems
Department of Computer Engineering, Rochester Institute of Technology
IEEE International Conference on High Performance Computing and Communications, 2015
@article{skalicky2015parallelizing,
title={A Parallelizing Matlab Compiler Framework and Run time for Heterogeneous Systems},
author={Skalicky, Sam and Lopez, Sonia and Lukowiak, Marcin and Schmidt, Andrew G},
year={2015}
}
Compute-intensive applications incorporate ever increasing data processing requirements on hardware systems. Many of these applications have only recently become feasible thanks to the increasing computing power of modern processors. The Matlab language is uniquely situated to support the description of these compute-intensive scientific applications, and consequently has been continuously improved to provide increasing computational support in the form of multithreading for CPUs and utilizing accelerators such as GPUs and FPGAs. Moreover, to take advantage of the computational support in these heterogeneous systems from the problem domain to the computer architecture necessitates a wide breadth of knowledge and understanding. In this work, we present a framework for the development of compute-intensive scientific applications in Matlab using heterogeneous processor systems. We investigate systems containing CPUs, GPUs, and FPGAs. We leverage the capabilities of Matlab and supplement them by automating the mapping, scheduling, and parallel code generation. Our experimental results on a set of benchmarks achieved from 20x to 60x speedups compared to the standard Matlab CPU environment with minimal effort required on the part of the user.
August 21, 2015 by hgpu