Titre original :

Predictable CNN Inference and Real-Time Scheduling on Multicore Embedded Platforms

Titre traduit :

Inférence prédictible des CNN et ordonnancement temps réel sur des plateformes embarquées multicoeurs

Mots-clés en français :
  • Temps reel
  • Wcet
  • Ia
  • Réseaux neuronaux convolutifs
  • Mémoire scratchpad

  • Temps réel (informatique)
  • Systèmes embarqués (informatique)
  • Microprocesseurs multi-coeurs
  • Ordonnancement (informatique)
  • Analyse Pire Cas
  • Apprentissage profond
  • Traitement d'images -- Techniques numériques
Mots-clés en anglais :
  • Real time
  • Wcet
  • Ai

  • Langue : Anglais
  • Discipline : Informatique et applications
  • Identifiant : 2025ULILB026
  • Type de thèse : Doctorat
  • Date de soutenance : 18/11/2025

Résumé en langue originale

Les systèmes embarqués modernes intègrent des fonctionnalités sophistiquées telles que le traitement d'images et le machine learning (ML). Un nombre croissant de ces applications sont soumises à des contraintes temporelles strictes, dont l'exécution en temps réel est essentielle au bon fonctionnement du système. Dans les véhicules autonomes, par exemple, le traitement en temps réel des images et des données capteurs est crucial pour prendre des décisions opportunes concernant la vitesse, la direction et le freinage.Malgré leur coût de calcul élevé et leur consommation énergétique importante, les algorithmes de ML sont généralement exécutés onéreux sur du matériel de pointe comme les GPU et les TPU. Exécuter ces algorithmes sur des plateformes embarquées représente un défi, mais aussi une opportunité. Cela permet de déployer des algorithmes complexes sur des dispositifs à faible consommation, avec des gains significatifs en efficacité énergétique, latence, confidentialité et coût.Parmi les algorithmes de ML les plus populaires figurent les Convolutional Neural Networks (CNNs), largement employés pour des tâches de traitement d'images et de vidéos telles que la détection d'objets et la classification d'images. Les CNNs sont réputés pourexiger d'importantes ressources de calcul et de mémoire, nécessaires au stockage des paramètres du modèle et des résultats intermédiaires. Cela rend leur exécution particulièrement ardue sur des systèmes embarqués aux ressources limitées.La plateforme d'exécution joue également un rôle crucial. De nombreux systèmes embarqués reposent sur des architectures multicœurs qui permettent d'exécuter plusieurs tâches en parallèle. Celles-ci introduisent cependant des défis liés à la contention des ressources, notamment pour l'accès mémoire et la cohérence du cache. Pour répondre à ces enjeux, les architectures dotées de mémoires scratchpad sont souvent privilégiées, car elles offrent des temps d'accès déterministes et suppriment les interférences typiques des systèmes à base de cache. Elles sont donc particulièrement adaptées aux applications temps réel, garantissant le respect des contraintes temporelles.Dans cette thèse, nous nous intéressons à l'exécution en temps réel de l'inférence de CNN sur des systèmes multicœurs équipés de mémoires scratchpad. Nous proposons d'abord un modèle formel qui capture les caractéristiques des tâches d'inférence, en considérant leurs patrons de dépendances de données et de connexions. Ce modèle repose sur un graphe de tâches où les opérations de calcul et les transferts de données sont modélisés par des nœuds, et leurs dépendances par des arêtes.Notre première contribution consiste à exploiter ce modèle pour développer une formulation Integer Linear Programming (ILP) qui alloue de manière optimale les tâches de calcul et les transferts de données entre les cœurs, tout en respectant les contraintes temporelles et de mémoire. Toutefois, la résolution de l'ILP s'avère rapidement coûteuse en temps de calcul et difficilement scalable.Pour surmonter cette limite, notre seconde contribution est un algorithme heuristique qui approxime la qualité de partitionnement de l'ILP tout en étant nettement plus efficace et scalable. L'heuristique met l'accent sur la localité des données et la minimisation des communications inter-cœurs, des facteurs clés pour préserver les performances temps réel sur les systèmes multicœurs.Enfin, nous intégrons cette heuristique dans un cadre complet, incluant le codage des précédences de tâches et une analyse d'ordonnançabilité. Ce cadre permet ainsi la co-planification de l'inférence de CNN avec d'autres tâches temps réel sporadiques sur des plateformes multicœurs. Les résultats expérimentaux, menés sur des CNN représentatifs et des charges de travail mixtes, démontrent l'efficacité et la pertinence pratique des méthodes proposées sur des systèmes embarqués réalistes.

Résumé traduit

Modern embedded systems incorporate sophisticated functionalitiessuch as image processing and machine learning (ML). Many suchapplications have strict timing demands and real-time executionof them is crucial for the system to be functional. For instance,in autonomous vehicles, real-time processing of images and sensordata is critical in order to arrive at timely decisions on speed,direction and braking.Despite their computationally intensive demands and large energy consumption,ML algorithms are usually executed on high-end hardware like GPUs and TPUs.Executing ML on embedded platforms is challenging but also promising. Itenables executing heavy algorithms on low-power devices with gains inenergy efficiency, latency, privacy, and cost.One of the most popular ML algorithms is Convolutional Neural Networks(CNNs), which are widely used for image and video processing tasks. Theycan be found in various applications, such as object detection, imageclassification and semantic segmentation. CNNs are known to be computationallyintensive and require a large amount of memory to store the model parametersand intermediate results. This makes them particularly challenging to executeon resource-constrained embedded systems.The platform on which CNNs are executed is also a crucial factor forachieving real-time performance. Many embedded systems are based onmulticore architectures, which allow executing multiple tasks inparallel. However, these architectures also introduce challenges relatedto resource contention, such as memory access and cache coherence. Toaddress these challenges, researechers have proposed the use ofscratchpad memories, which provide deterministic memory access times andeliminate the interference typical of cache-based systems. This makesthem particularly suitable for real-time applications, as they allowguaranteeing the timing constraints of the system.In this thesis, we address the real-time execution of CNN inference onmulticore scratchpad-based systems. We first propose a formal model thatcaptures the characteristics of CNN inference tasks, considering theirconnection patterns and data dependencies. The model is based on a taskgraph representation, where both computational tasks and memorytransfers are represented as nodes and their dependencies as edges.As a first contribution, we use this model to develop an Integer LinearProgramming (ILP) formulation that optimally allocates computationaltasks and memory transfers across cores while respecting timing andmemory constraints. This yields optimal task allocation under strictreal-time requirements. However, the ILP becomes computationallyexpensive and less scalable for large workloads.To overcome this, our second contribution is a heuristic algorithmthat approximates the ILP-level partitioning while being significantlymore efficient and scalable. The heuristic emphasizes memory localityand minimizes inter-core communication—key factors for maintainingreal-time performance on multicore systems.Finally, we integrate the heuristic into a complete schedulingframework that includes task precedence encoding and schedulabilityanalysis. This framework enables the co-scheduling of CNN inferencealongside other real-time sporadic tasks on multicoreplatforms. Experimental results on representative CNNs and mixedworkloads demonstrate the effectiveness and practicality of theproposed methods on realistic embedded systems.

  • Directeur(s) de thèse : Lipari, Giuseppe - Zahaf, Houssam-Eddine
  • Président de jury : Grimaud, Gilles
  • Membre(s) de jury : Nasri, Mitra
  • Rapporteur(s) : Pagetti, Claire - Singhoff, Frank
  • Laboratoire : Centre Inria de l'Université de Lille - Centre de Recherche en Informatique, Signal et Automatique de Lille
  • École doctorale : École graduée Mathématiques, sciences du numérique et de leurs interactions (Lille ; 2021-....)

AUTEUR

  • Daini, Chiara