A Review on Software Architectures for Heterogeneous Platforms
Paper in proceeding, 2018

The increasing demands for computing performance have been a reality regardless of the requirements for smaller and more energy efficient devices. Throughout the years, the strategy adopted by industry was to increase the robustness of a single processor by increasing its clock frequency and mounting more transistors so more calculations could be executed. However, it is known that the physical limits of such processors are being reached, and one way to fulfill such increasing computing demands has been to adopt a strategy based on heterogeneous computing, i.e., using a heterogeneous platform containing more than one type of processor. This way, different types of tasks can be executed by processors that are specialized in them. Heterogeneous computing, however, poses a number of challenges to software engineering, especially in the architecture and deployment phases. In this paper, we conduct an empirical study that aims at discovering the state-of-the-art in software architecture for heterogeneous computing, with focus on deployment. We conduct a systematic mapping study that retrieved 28 studies, which were critically assessed to obtain an overview of the research field. We identified gaps and trends that can be used by both researchers and practitioners as guides to further investigate the topic.

software deployment

software architecture

heterogeneous computing


Hugo Sica de Andrade

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Ivica Crnkovic

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Proceedings - Asia-Pacific Software Engineering Conference, APSEC

15301362 (ISSN)

Vol. 2018-December 209-218 8719512
978-1-7281-1970-0 (ISBN)

25th Asia-Pacific Software Engineering Conference
Nara, Japan,

HELPING: Modellering av heterogena plattformar av inbyggda system

Swedish Research Council (VR), 2014-10-01 -- 2016-12-31.

Subject Categories

Computer Engineering

Software Engineering

Computer Systems

Areas of Advance

Information and Communication Technology



More information

Latest update