Vous êtes ici : Accueil » Kiosque » Annonce

Identification

Identifiant: 
Mot de passe : 

Mot de passe oublié ?
Détails d'identification oubliés ?

Annonce

20 octobre 2017

Ordonnancement en ligne de tâches logicielles et matérielles pour des architectures à base de FPGA


Catégorie : Doctorant


Dans le contexte des véhicules autonomes électriques utilisant des algorithmes neuro-inspirés, nous proposons une thèse sur l'ordonnancement de tâches pour architectures embarquées parallèles, hétérogènes, et reconfigurables.

 

CONTEXTE ET PROBLÉMATIQUE

Les circuits FPGAs possèdent des capacités de reconfiguration partielle et dynamique permettant d’effectuer un multiplexage spatial et temporel des tâches matérielles et logicielles sur leur surface. Ces propriétés rendent les FPGAs adaptés à l’implémentation d’applications embarquées multi-tâches, dynamiques et fortement parallèles. Ils offrent ainsi, à la fois le meilleur compromis architectural entre les solutions généralistes et flexibles à base de processeurs et les systèmes performants et dédiés à base d’ASICs ou GPU, et, le meilleur compromis entre consommation et temps de développement. Le partitionnement temporel des tâches en fonction de la charge computationnelle, nécessite de développer un nouveau middleware dédié. En effet, l’ordonnancement ciblant un FPGA est rendu beaucoup plus complexe que l’ordonnancement mono ou multi-processeurs du fait des degrés de liberté qu’offre le circuit. Cette complexité s’accentue dans le cadre d’un substrat computationnel multi-FPGA. En effet, il s’approche d’un ordonnancement multi-processeurs hétérogènes à nombre de processeurs continuellement variable dans le temps et spatialement. Dans le contexte des véhicules autonomes électriques, il devient primordial d’optimiser la consommation du substrat computationnel en fonction des situations (charge de calcul variable en fonction du flux d’information). De ce fait, l’ordonnancement doit être en ligne a contrario de l’ordonnancement hors ligne, où le flot de l’application est connu à l’avance. L’ordonnancement optimal de l’application peut être calculé avant son démarrage. Par contre, dans un contexte en ligne [10], les temps d’arrivée des tâches ainsi que leurs temps d’exécution sont non prédictibles ; l’ordonnancement est alors ré-effectué en ligne en fonction des évènements survenus (arrivée ou fin d’une tâche, etc...). De nombreux travaux dans la littérature [8-11] ont étudié l’ordonnancement et le placement temps réel pour FPGAs. Dans [11] sont proposés des algorithmes d’ordonnancement 1D et 2D en ligne et temps réel des tâches sporadiques alors que l’étude effectuée dans [7] se focalise sur l’ordonnancement temps réel, préemptif mais hors-ligne et 1D des tâches périodiques. Dans [8] des tâches multi-versions et des tâches sporadiques sont traitées dans un contexte en ligne, 2D et non-préemptif. Dans un contexte où la charge computationnelle peut être variable, le substrat computationnel doit être en capacité de répondre à la demande et d’être notamment scalable. Il devient alors nécessaire de proposer des nouvelles méthodologies d’ordonnancement et de placement de tâches sur des substrats hétérogènes (FPGA + multi-cœur), dans un contexte 3D, en ligne et non-préemptif.

APPLICATION À LA NAVIGATION BIO-INSPIRÉE DU VEHICULE AUTONOME - VEDECOM

Le véhicule autonome connaît une progression accélérée depuis quelques années à travers, les véhicules à délégation de conduite partielle, les navettes autonomes, les minibus sans chauffeurs, etc… Leur performances en milieux autoroutiers et citadins dépendent des algorithmes de planification et navigation. Les animaux sont dotés de capacités de navigation à la fois performantes et capables de s’adapter à un environnement dynamique, et des modèles bio-inspirés pour le véhicule autonome représente une voie exploratoire prometteuse de part leur caractéristiques. Certains systèmes biologiques sont capables de fonctionner sur des très longues périodes et font face à la dégradation lente ou brutale de certains capteurs tout en garantissant un très bon niveau de performances. Cela est dû à la fois à la capacité du cerveau à utiliser un très grand nombre de capteurs et à s'adapter en permanence aux changements dans les couplages entre les différents capteurs. La dynamique interne des neurones que l'on retrouve dans les champs de neurones dynamiques semble en faire de bons candidats pour garantir une représentation du monde robuste à l’intermittence entre signaux sensoriels mais aussi pour fusionner ou séparer des signaux en fonction de leur proximité spatiale [1]. Les informations sensorielles issues des différents capteurs peuvent ensuite être apprises et reconnues par des cellules de l’hippocampe qui ont la particularité de répondre de façon très localisée dans l’environnement : des cellules de lieux. Ces cellules sont apprises en extrayant des amers visuels dans l’environnement qui, combinés à une information d’orientation (obtenue par une boussole magnétique ou une boussole visuelle) et à de l'intégration de chemin, permettent de caractériser le lieu courant [2-6]. Le passage à l’échelle de ce modèle de navigation sur de grandes distances implique un accroissement du nombre de PCs recrutées qui induit des problèmes d'explosion combinatoire (surcoût computationnel et d'espace mémoire). La navigation sur de grandes distances impose donc de redéfinir des stratégies d’optimisation (évaluation des signaux sensoriels, prise en compte du contexte dans les apprentissages, contrôle des apprentissages/adaptations, contrôle des stratégies de navigation) [7] et un substrat computationnel à la demande.

Avec le soutien du CNRS, le laboratoire ETIS vient de développer (mars 2017) une carte unique à base de circuits reconfigurables. Cette carte a la particularité de posséder 9 circuits hétérogènes (cortex A9 + Kintex 7) avec une topologie matricielle 3x3. Ce plan de calcul permet ainsi d'aborder les problématiques d'architectures many-core hétérogènes et de modèle de programmation. Ces FPGA sont interconnectés via un réseau de communication par paires différentielles organisées en topologie MESH-2D et par lequel peuvent transiter des communications numériques séries à haut débit entre 2 nœuds de routage voisins. La glue associée à chaque FPGA permet de modifier de manière indépendante la fréquence et la tension, en vue de réduire la consommation de chaque circuit et de contribuer ainsi à la minimisation de la consommation globale.

OBJECTIFS

Cette thèse permettra d’aborder :

  1. La définition de nouvelles méthodologies pour l’ordonnancement et le placement de tâches logicielles et matérielles sur un substrat 2D, en ligne, sans préemption tout en réduisant la consommation et en garantissant une QoS
  2. Le Bench des solutions développées sur les algorithmes de planification/navigation autonomes.
  3. Etablir le gain en performance vis à vis des architectures utilisées actuellement dans le véhicule autonome par VEDECOM.

PROFIL ATTENDU DU CANDIDAT

Formation : Ingénieur ou Master 2 recherche

Compétences recherchées : OS, Architecture numérique, FPGA, HDL, HLS.

EQUIPES

La thèse sera réalisée au sein du laboratoire ETIS et en collaboration avec Védécom.

Directeur de thèse : Lounis Kessal

Encadrants : Stéphane Zuckerman, Jordane Lorandel, Fakhreddine Ghaffari et Olivier Romain

Contacter Lounis Kessal (lounis.kessal@ensea.fr) ou Stéphane Zuckerman (stephane.zuckerman@ensea.fr) si intéressé.

REFERENCES BIBLIOGRAPHIQUES

Dans cette rubrique

(c) GdR 720 ISIS - CNRS - 2011-2018.