Programming Real-Time Image Processing for Manycores in a High-Level Language
2013
Manycore architectures are gaining attention as a means to meet the performance and power demands of high-performance embedded systems. However, their widespread adoption is sometimes constrained by the need for mastering proprietary programming languages that are low-level and hinder portability.
We propose the use of the concurrent programming language occam-pi as a high-level language for programming an emerging class of manycore architectures. We show how to map occam-pi programs to the manycore architecture Platform 2012 P2012. We describe the techniques used to translate the salient features of the language to the native programming model of the P2012. We present the results from a case study on a representative algorithm in the domain of real-time image processing: a complex algorithm for corner detection called Features from Accelerated Segment Test FAST. Our results show that the occam-pi program is much shorter, is easier to adapt and has a competitive performance when compared to versions programmed in the native programming model of P2012 and in OpenCL.
Keywords:
- Fourth-generation programming language
- Programming paradigm
- Parallel computing
- Programming domain
- Extensible programming
- Real-time computing
- High-level programming language
- Fifth-generation programming language
- Reactive programming
- Computer science
- Symbolic programming
- Inductive programming
- Procedural programming
- Computer architecture
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
21
References
2
Citations
NaN
KQI