HPM-Frame: A Decision Framework for Executing Software on Heterogeneous Platforms
Preprint, 2020

Heterogeneous computing is one of the most important computational solutions to meet rapidly increasing demands on system performance. It typically allows the main flow of applications to be executed on a CPU while the most computationally intensive tasks are assigned to one or more accelerators, such as GPUs and FPGAs. The refactoring of systems for execution on such platforms is highly desired but also difficult to perform, mainly due the inherent increase in software complexity. After exploration, we have identified a current need for a systematic approach that supports engineers in the refactoring process - from CPU-centric applications to software that is executed on heterogeneous platforms. In this paper, we introduce a decision framework that assists engineers in the task of refactoring software to incorporate heterogeneous platforms. It covers the software engineering lifecycle through five steps, consisting of questions to be answered in order to successfully address aspects that are relevant for the refactoring procedure. We evaluate the feasibility of the framework in two ways. First, we capture the practitioner's impressions, concerns and suggestions through a questionnaire. Then, we conduct a case study showing the step-by-step application of the framework using a computer vision application in the automotive domain.

Software engineering

Software design

Parallel architectures

Author

Hugo Sica de Andrade

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

Ola Benderius

Chalmers, Mechanics and Maritime Sciences (M2), Vehicle Engineering and Autonomous Systems

Christian Berger

University of Gothenburg

Ivica Crnkovic

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

Jan Bosch

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

HoliDev - Holistic DevOps Framework

VINNOVA (2017-05218), 2018-01-01 -- 2019-12-31.

HELPING: Modellering av heterogena plattformar av inbyggda system

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

Areas of Advance

Information and Communication Technology

Subject Categories

Software Engineering

Computer Systems

More information

Latest update

8/11/2022