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

Författare

Hugo Sica de Andrade

Chalmers, Data- och informationsteknik, Software Engineering

Ola Benderius

Chalmers, Mekanik och maritima vetenskaper, Fordonsteknik och autonoma system

Christian Berger

Göteborgs universitet

Ivica Crnkovic

Chalmers, Data- och informationsteknik, Software Engineering

Jan Bosch

Chalmers, Data- och informationsteknik, Software Engineering

HoliDev - Holistic DevOps Framework

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

HELPING: Modellering av heterogena plattformar av inbyggda system

Vetenskapsrådet (VR), 2014-10-01 -- 2016-12-31.

Styrkeområden

Informations- och kommunikationsteknik

Ämneskategorier

Programvaruteknik

Datorsystem

Mer information

Senast uppdaterat

2022-08-11