hh.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Programming Real-time Image Processing for Manycores in a High-level Language
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS), Centre for Research on Embedded Systems (CERES).
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS), Centre for Research on Embedded Systems (CERES).ORCID iD: 0000-0002-4932-4036
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS), Centre for Research on Embedded Systems (CERES).ORCID iD: 0000-0001-6625-6533
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS).
Show others and affiliations
2013 (English)In: Advanced Parallel Processing Technology / [ed] Wu, Chenggang and Cohen, Albert, Berlin Heidelberg: Springer Berlin/Heidelberg, 2013, 381-395 p.Conference paper, Published paper (Refereed)
Abstract [en]

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 formastering 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 detectioncalled 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.

Place, publisher, year, edition, pages
Berlin Heidelberg: Springer Berlin/Heidelberg, 2013. 381-395 p.
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 8299
Keyword [en]
Parallel programming, occam-pi, Manycore architectures, Realtime image processing
National Category
Embedded Systems
Identifiers
URN: urn:nbn:se:hh:diva-24018DOI: 10.1007/978-3-642-45293-2_29Scopus ID: 2-s2.0-84893040633ISBN: 978-3-642-45292-5 OAI: oai:DiVA.org:hh-24018DiVA: diva2:667725
Conference
10th International Conference on Advanced Parallel Processing Technology, APPT 2013, Stockholm, August
Available from: 2013-11-27 Created: 2013-11-27 Last updated: 2017-09-05Bibliographically approved
In thesis
1. Compiling Concurrent Programs for Manycores
Open this publication in new window or tab >>Compiling Concurrent Programs for Manycores
2015 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

The arrival of manycore systems enforces new approaches for developing applications in order to exploit the available hardware resources. Developing applications for manycores requires programmers to partition the application into subtasks, consider the dependence between the subtasks, understand the underlying hardware and select an appropriate programming model. This is complex, time-consuming and prone to error.

In this thesis, we identify and implement abstraction layers in compilation tools to decrease the burden of the programmer, increase programming productivity and program portability for manycores and to analyze their impact on performance and efficiency. We present compilation frameworks for two concurrent programming languages, occam-pi and CAL Actor Language, and demonstrate the applicability of the approach with application case-studies targeting these different manycore architectures: STHorm, Epiphany and Ambric.

For occam-pi, we have extended the Tock compiler and added a backend for STHorm. We evaluate the approach using a fault tolerance model for a four stage 1D-DCT algorithm implemented by using occam-pi’s constructs for dynamic reconfiguration, and the FAST corner detection algorithm which demonstrates the suitability of occam-pi and the compilation framework for data-intensive applications. We also present a new CAL compilation framework which has a front end, two intermediate representations and three backends: for a uniprocessor, Epiphany, and Ambric. We show the feasibility of our approach by compiling a CAL implementation of the 2D-IDCT for the three backends. We also present an evaluation and optimization of code generation for Epiphany by comparing the code generated from CAL with a hand-written C code implementation of 2D-IDCT.

Place, publisher, year, edition, pages
Halmstad: Halmstad University Press, 2015. 35 p.
Series
Halmstad University Dissertations, 11
National Category
Embedded Systems
Identifiers
urn:nbn:se:hh:diva-27789 (URN)978-91-87045-25-7 (ISBN)978-91-87045-24-0 (ISBN)
Presentation
2015-03-20, Haldasalen, House Visionen, Halmstad University, Halmstad, 10:15 (English)
Opponent
Supervisors
Available from: 2015-02-16 Created: 2015-02-13 Last updated: 2015-08-21Bibliographically approved
2. Tools to Compile Dataflow Programs for Manycores
Open this publication in new window or tab >>Tools to Compile Dataflow Programs for Manycores
2017 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

The arrival of manycore systems enforces new approaches for developing applications in order to exploit the available hardware resources. Developing applications for manycores requires programmers to partition the application into subtasks, consider the dependence between the subtasks, understand the underlying hardware and select an appropriate programming model. This is complex, time-consuming and prone to error. In this thesis, we identify and implement abstraction layers in compilation tools to decrease the burden of the programmer, increase program portability and scalability, and increase retargetability of the compilation framework. We present compilation frameworks for two concurrent programming languages, occam-pi and CAL Actor Language, and demonstrate the applicability of the approach with application case-studies targeting these different manycore architectures: STHorm, Epiphany, Ambric, EIT, and ePUMA. For occam-pi, we have extended the Tock compiler and added a backend for STHorm. We evaluate the approach using a fault tolerance model for a four stage 1D-DCT algorithm implemented by using occam-pi's constructs for dynamic reconguration, and the FAST corner detection algorithm which demonstrates the suitability of occam-pi and the compilation framework for data-intensive applications. For CAL, we have developed a new compilation framework, namely Cal2Many. The Cal2Many framework has a front end, two intermediate representations and four backends: for a uniprocessor, Epiphany, Ambric, and a backend for SIMD based architectures. Also, we have identied and implemented of CAL actor fusion and fission methodologies for efficient mapping CAL applications. We have used QRD, FAST corner detection, 2D-IDCT, and MPEG applications to evaluate our compilation process and to analyze the limitations of the hardware.

Place, publisher, year, edition, pages
Halmstad: Halmstad University Press, 2017. 35 p.
Series
Halmstad University Dissertations, 33
National Category
Embedded Systems
Identifiers
urn:nbn:se:hh:diva-34883 (URN)978-91-87045-69-1 (ISBN)978-91-87045-68-4 (ISBN)
Public defence
2017-09-27, Wigforssalen, Hus J (Visionen), Kristian IV:s väg 3, Halmstad, 13:15 (English)
Opponent
Supervisors
Available from: 2017-09-06 Created: 2017-09-05 Last updated: 2017-09-06Bibliographically approved

Open Access in DiVA

fulltext(784 kB)226 downloads
File information
File name FULLTEXT01.pdfFile size 784 kBChecksum SHA-512
f79c8ef12905efdc75d30ddd2274b28779b53812ab08aad59d29060b798466b658f721368089c3018419c9efdf8f3fa62afb55c3c6947828671a8d379115e467
Type fulltextMimetype application/pdf

Other links

Publisher's full textScopushttp://link.springer.com/chapter/10.1007%2F978-3-642-45293-2_29#

Search in DiVA

By author/editor
Gebrewahid, EssayasUl-Abdin, ZainSvensson, BertilGaspes, Veronica
By organisation
Centre for Research on Embedded Systems (CERES)Halmstad Embedded and Intelligent Systems Research (EIS)
Embedded Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 226 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Altmetric score

Total: 184 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf