Skip to main navigation Skip to search Skip to main content

libEOMP: A portable OpenMP runtime library based on MCA APIs for embedded systems

  • Cheng Wang
  • , Sunita Chandrasekaran
  • , Barbara Chapman
  • , Jim Holt
  • University of Houston
  • Freescale Semiconductor

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

14 Scopus citations

Abstract

In recent years rapid revolution of Multiprocessor System-on-Chip (MPSoC) poses new challenges for programming such architectures in an efficient manner. In order to explore potential hardware concurrency, software developers are still expected to handle many of the low-level details of programming including utilizing DMA, ensuring cache co-herency, and inserting synchronization primitives explicitly. Software portability is yet another issue: the state-of-the-art is that hardware vendors supply vendor-specific software development toolchains which makes it harder for applications to be ported to many different possible architectures without re-structuring the code, while at the same time ensuring efficiency. In this paper, we extend the usage of a high-level programming model, OpenMP, to multicore embedded systems. To address the architectural challenges, we propose a lightweight unified OpenMP runtime library, libEOMP, by leveraging the MCA (Multicore Association) APIs as the target of our OpenMP translation. MCA APIs support device-level communication and resource management for multicore embedded systems. We have implemented and evaluated libEOMP on an embedded platform supplied by Freescale Semiconductor. We observed that libEOMP not only performed as well as optimized vendor-specific OpenMP runtime libraries but also achieved better portability, programmability and productivity.

Original languageEnglish
Title of host publicationProceedings of the 2013 International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2013
PublisherAssociation for Computing Machinery
Pages83-92
Number of pages10
ISBN (Print)9781450319089
DOIs
StatePublished - Feb 23 2013
Event2013 International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2013 - Shenzhen, Guangdong, China
Duration: Feb 23 2013Feb 23 2013

Publication series

NameProceedings of the 2013 International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2013

Conference

Conference2013 International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2013
Country/TerritoryChina
CityShenzhen, Guangdong
Period02/23/1302/23/13

Keywords

  • embedded system
  • MCA
  • OpenMP
  • runtime

Fingerprint

Dive into the research topics of 'libEOMP: A portable OpenMP runtime library based on MCA APIs for embedded systems'. Together they form a unique fingerprint.

Cite this