Using Parallel Programming Models for Automotive Workloads on Heterogeneous Systems - a Case Study

Due to the ever-increasing computational demand of automotive applications, and in particular autonomous driving functionalities, the automotive industry and supply vendors are starting to adopt parallel and heterogeneous embedded platforms for their products.However, C and C++, the currently dominating programming languages in this industry, do not provide sufficient mechanisms to target such platforms. Established parallel programming models such as OpenMP and OpenCL on the other hand are tailored towards HPC systems.In this case study, we investigate the applicability of established parallel programming models to automotive workloads on heterogeneous platforms. We pursue a practical approach by re-enacting a typical development process for typical embedded platforms and representative benchmarks.

[1]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[2]  Alois Knoll,et al.  A Hybrid Framework for Fast and Accurate GPU Performance Estimation through Source-Level Analysis and Trace-Based Simulation , 2019, 2019 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[3]  Z Molotnikov,et al.  Future programming paradigms in the automotive industry , 2016 .

[4]  Roger Reynaud,et al.  Optimal Performance Prediction of ADAS Algorithms on Embedded Parallel Architectures , 2015, 2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems.

[5]  Lukas Sommer,et al.  EPHoS: Evaluation of Programming Models for Heterogeneous Systems , 2019 .

[6]  Shinpei Kato,et al.  An Open Approach to Autonomous Vehicles , 2015, IEEE Micro.

[7]  Andreas Koch,et al.  Synthesis of interleaved multithreaded accelerators from OpenMP loops , 2017, 2017 International Conference on ReConFigurable Computing and FPGAs (ReConFig).

[8]  Aaftab Munshi,et al.  The OpenCL specification , 2009, 2009 IEEE Hot Chips 21 Symposium (HCS).

[9]  Maurice H. Halstead,et al.  Elements of software science , 1977 .

[10]  Andreas Koch,et al.  OpenMP device offloading to FPGA accelerators , 2017, 2017 IEEE 28th International Conference on Application-specific Systems, Architectures and Processors (ASAP).

[11]  Jeffrey C. Carver,et al.  Parallel Programmer Productivity: A Case Study of Novice Parallel Programmers , 2005, ACM/IEEE SC 2005 Conference (SC'05).

[12]  Victor R. Basili,et al.  An empirical study to compare two parallel programming models , 2006, SPAA '06.