In this paper, we present our effort in developing an open-source GPU (graphics processing units) code library for the MATLAB Image Processing Toolbox (IPT). We ported a dozen of representative functions from IPT and based on their inherent characteristics, we grouped these functions into four categories: data independent, data sharing, algorithm dependent and data dependent. For each category, we present a detailed case study, which reveals interesting insights on how to efficiently optimize the code for GPUs and highlight performance-critical hardware features, some of which have not been well explored in existing literature. Our results show drastic speedups for the functions in the data-independent or data-sharing category by leveraging hardware support judiciously; and moderate speedups for those in the algorithm-dependent category by careful algorithm selection and parallelization. For the functions in the last category, fine-grain synchronization and data-dependency requirements are the main obstacles to an efficient implementation on GPUs. Copyright© 2010 ACM.
CITATION STYLE
Kong, J., Dimitrov, M., Yang, Y., Liyanage, J., Cao, L., Staples, J., … Zhou, H. (2010). Accelerating MATLAB image processing toolbox functions on GPUs. In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS (pp. 75–85). https://doi.org/10.1145/1735688.1735703
Mendeley helps you to discover research relevant for your work.