CE25 - Sciences et génie du logiciel - Réseaux de communication multi-usages, infrastructures de hautes performances

Multi/many-core and gpu combined wcet analysis, Scheduling and Compilation techniques for Autonomous vehicle applications based on Neural networks – MeSCAliNe

Submission summary

Machine learning methods based on neural networks (NNs) have made tremendous progress in the past years. In particular computer vision, data fusion and motion planning applications are being successfully developed for autonomous vehicles. However, the computer systems controlling such vehicles are critical real-time systems and must be verified and certified both functionally and temporally. As such, solid worst-case execution/response time (WCET/WCRT) analysis techniques will be required for autonomous vehicles computer systems. NNs are applications which require a lot of computing power, and at the same time feature a high potential of parallelism. For these reasons they are being deployed on (massively) parallel hardware such as multi/many-core CPUs and System-on-Chips featuring multi-core CPUs and accelerators such as Graphical Processing Units (GPUs). Unfortunately, existing WCET analysis methods are not suited for such parallel architectures. The main problem stems from the fact that applications or tasks running in parallel in fact share some
sequential hardware components in these architectures (e.g. busses), and must compete to access them. When two tasks try to access a shared component at the same time, their execution is serialized: one of them has to wait for the other to finish, resulting in a timing penalty for the waiting task. In the real-time community, this phenomenon is called interference. Detecting and quantifying such interference in an efficient and precise way is an open problem in the real-time community, and is necessary in order to provide safe WCET bounds for the tasks running in parallel. Moreover, for the particular case of GPUs, the execution mechanisms inherent to the Single Instruction Multiple Threads (SIMT) execution model are not supported in current WCET analysis methods. In this project we propose to tackle these issues in a unified framework which combines static analysis, static scheduling and code generation in order to generate safe and efficient implementations of parallel real-time applications with guaranteed WCET/WCRT bounds. To do so, we will rely on the existing Time Interest Points (TIPs) framework and extend it to support GPU execution mechanisms and to perform aggressive scheduling optimizations. We will primarily target neural network and autonomous vehicle applications in our optimizations, but the general method will be applicable to any real-time application. This project involves working on static analysis of programs, in particular using abstract interpretation, static scheduling for parallel targets with functional and real-time constraints, and with interference analysis, and automatic code generation. The framework will be implemented using and extending two existing open-source toolboxes developed and maintained in the team: OTAWA (WCET analysis) and Ouroboros (static scheduling). We will demonstrate our results using drones.

Project coordination

Thomas Carle (Institut de Recherche en Informatique de Toulouse)

The author of this summary is the project coordinator, who is responsible for the content of this summary. The ANR declines any responsibility as for its contents.

Partner

IRIT Institut de Recherche en Informatique de Toulouse

Help of the ANR 291,273 euros
Beginning and duration of the scientific project: March 2022 - 48 Months

Useful links

Explorez notre base de projets financés

 

 

ANR makes available its datasets on funded projects, click here to find more.

Sign up for the latest news:
Subscribe to our newsletter