학술논문

The AMPERE Project: : A Model-driven development framework for highly Parallel and EneRgy-Efficient computation supporting multi-criteria optimization
Document Type
Conference
Source
2020 IEEE 23rd International Symposium on Real-Time Distributed Computing (ISORC) Real-Time Distributed Computing (ISORC), 2020 IEEE 23rd International Symposium on. :201-206 May, 2020
Subject
Computing and Processing
Technological innovation
Parallel programming
Software architecture
Computational modeling
Transforms
Real-time systems
Software
parallel programming models
parallel and heterogeneous embedded processor architectures
model-driven approaches
safety-critical embedded systems
Language
ISSN
2375-5261
Abstract
The high-performance requirements needed to implement the most advanced functionalities of current and future Cyber-Physical Systems (CPSs) are challenging the development processes of CPSs. On one side, CPSs rely on model-driven engineering (MDE) to satisfy the non-functional constraints and to ensure a smooth and safe integration of new features. On the other side, the use of complex parallel and heterogeneous embedded processor architectures becomes mandatory to cope with the performance requirements. In this regard, parallel programming models, such as OpenMP or CUDA, are a fundamental brick to fully exploit the performance capabilities of these architectures. However, parallel programming models are not compatible with current MDE approaches, creating a gap between the MDE used to develop CPSs and the parallel programming models supported by novel and future embedded platforms.The AMPERE project will bridge this gap by implementing a novel software architecture for the development of advanced CPSs. To do so, the proposed software architecture will be capable of capturing the definition of the components and communications described in the MDE framework, together with the non-functional properties, and transform it into key parallel constructs present in current parallel models, which may require extensions. These features will allow for making an efficient use of underlying parallel and heterogeneous architectures, while ensuring compliance with non-functional requirements, including those on real-time performance of the system.