WCSE 2015
ISBN: 978-981-09-5471-0 DOI: 10.18178/wcse.2015.04.080

Asynchronous and Synchronous Approaches for Developing Software on Embedded Multicore Systems

Michael Bogner, Matthias Bonora, Franz Wiesinger

Abstract— This paper shows modern ways of developing software on embedded multicore systems. It sets its focus on established multithreading technologies on desktop systems and tests their use in an embedded environment. Existing multithreading libraries and newer developments are covered, with the main focus on solutions suitable for industry proven applications and requirements. Also, already established methods for using multicore embedded systems are examined, mainly the use of asynchronous multiprocessing. We compare these approaches, show their differences, examine their areas of use and test whether or not they meet the requirements in industrial applications. Our results show that the use of libraries, like C++11, Intel’s TBB, Poco or Boost are able to meet the requirements while providing multithreading solutions for different use-cases, ranging from simple and basic parallelization up to low-level communication and optimization on chip level to larger, highly parallel applications. As the use of multicore processors will increase over time, we believe that these multithreaded libraries will be an essential factor in future development and that their use in embedded systems will be increasing accordingly.

Index Terms— multicore, MCAPI, MRAPI, C++11, threads, TBB, OpenMP, Boost, Poco

Michael Bogner, Matthias Bonora, Franz Wiesinger
University of Applied Sciences Upper Austria, AUSTRIA


Cite: Michael Bogner, Matthias Bonora, Franz Wiesinger, "Asynchronous and Synchronous Approaches for Developing Software on Embedded Multicore Systems," 2015 The 5th International Workshop on Computer Science and Engineering-Information Processing and Control Engineering (WCSE 2015-IPCE), pp. 482-486, Moscow, Russia, April 15-17, 2015.