Fine-grained adaptive parallelism for automotive systems through AMALTHEA and OpenMP

The software development complexity of automotive systems has significantly increased during the last decade due to the latest Advanced Driving Assistance System (ADAS) functionalities. To effectively address this complexity, domain specific modeling languages (DSMLs) like AUTOSAR or an open-source...

ver descrição completa

Detalhes bibliográficos
Autores: Munera Sánchez, Adrián, Royuela Alcázar, Sara|||0000-0002-7644-0868, Pressler, Michael, Mackamul, Harald, Ziegenbein, Dirk, Quiñones Moreno, Eduardo
Formato: artículo
Fecha de publicación:2023
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/398448
Acesso em linha:https://hdl.handle.net/2117/398448
https://dx.doi.org/10.1016/j.sysarc.2023.103034
Access Level:acceso abierto
Palavra-chave:Parallel processing (Electronic computers)
Parallel programming (Computer science)
Embedded computer systems
OpenMP
AMALTHEA
DSML
Parallel and heterogeneous computing
Embedded computing
Processament en paral·lel (Ordinadors)
Programació en paral·lel (Informàtica)
Ordinadors immersos, Sistemes d'
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors::Arquitectures paral·leles
Descrição
Resumo:The software development complexity of automotive systems has significantly increased during the last decade due to the latest Advanced Driving Assistance System (ADAS) functionalities. To effectively address this complexity, domain specific modeling languages (DSMLs) like AUTOSAR or an open-source system performance model for AUTOSAR-aligned systems, APP4MC, have become a common trend in the automotive industry. DSMLs allow for easily capturing the functional and non-functional requirements of the system without needing to master low level details of the programming model or the processor architecture. Unfortunately, current DSMLs do not support the parallel programming models, like OpenMP and CUDA, that are used to exploit parallel heterogeneous architectures featuring acceleration devices such as GPUs and FPGAs required. These architectures are however essential to cope with the performance needs of ADAS. This exposes a gap between the DSMLs used by automotive designers to enhance software productivity and leverage verification and validation processes, and the parallel processor architectures used in this domain. This paper presents a complete framework to safely exploit the inherent parallelism exposed by the AMALTHEA system description, supported in APP4MC, by: (1) automatically transforming the high-level design into the OpenMP parallel programming model targeting both host and accelerator parallelism, and (2) using compiler analysis techniques to prove the correctness of the model transformed to OpenMP code. The paper contributes also with (3) an analysis of the parallel execution model allowed by the AMALTHEA DSML and that of OpenMP, and (4) a performance plus productivity evaluation of the proposed framework on real automotive systems executed on an embedded GPU-based processor architecture.