Thèse en cours

Ordonnancement et assignation de tâches en ligne dans le contexte du calcul dans le edge

FR  |  
EN
Auteur / Autrice : Mohamed Anisse Belhadj
Direction : Henri-Pierre Charles
Type : Projet de thèse
Discipline(s) : Informatique
Date : Inscription en doctorat le 23/10/2023
Etablissement(s) : Université Grenoble Alpes
Ecole(s) doctorale(s) : École doctorale mathématiques, sciences et technologies de l'information, informatique
Partenaire(s) de recherche : Laboratoire : CEA Grenoble - LETI

Résumé

FR  |  
EN

Les applications traitant de grandes quantités de données et nécessitant des calculs longs et complexes, comme les jeux vidéo en ligne, les applications utilisant la géolocalisation ou le traitement d'images à partir d'un appareil photo mobile, ne peuvent pas utiliser les clusters de calcul dans le cloud car le temps de réponse peut être trop long. En revanche, au niveau du edge, des ressources de calcul distribuées et hétérogènes sont disponibles. L'utilisation efficace de ces ressources informatiques distribuées et hétérogènes dépend fortement de l'architecture des nœuds de calcul, de la capacité de leurs batteries, de la stratégie d'allocation des ressources et de l'algorithme d'ordonnancement des tâches. En fait, les architectures hétérogènes sont censées relever le défi de la réduction du coût énergétique du calcul haute performance en proposant un mélange de nœuds HPC et de nœuds à faible consommation. Cependant, cet aspect hétérogène des nœuds rend l'ordonnancement et la gestion de leurs ressources plus compliqués. Il est donc nécessaire de développer une technologie efficace d'ordonnancement et de gestion des ressources qui puisse orchestrer les nœuds hétérogènes et les ressources sous des contraintes de latence, tout en minimisant le coût énergétique du calcul. Il existe un effort de recherche important pour définir des méthodes d'ordonnancement et d'affectation de tâches sur de telles plates-formes de calcul dans différents contextes tels que la robotique, la fabrication, le edge computing, etc. Ces travaux ont considéré des environnements d'exécution dynamique ou statique. Un environnement est statique lorsque le système de tâches et de ressources est connu et fixé à l'avance. Il est dynamique lorsque les tâches arrivent de manière aléatoire et dynamique et/ou lorsque les ressources sont volatiles, par exemple lorsqu'une batterie est vide. Ces travaux ont cherché à minimiser plusieurs fonctions objectives telles que, la somme des retards dus à l'insertion de nouvelles tâches, la minimisation du nombre de défaillances du système. D'autres s'intéressent à l'équilibrage de la charge, ou à la maximisation d'un score de confiance associé aux ressources [Sun et al., 2019]. La plupart des travaux de l'état de l'art utilisent l'apprentissage par renforcement (plus spécifiquement, les algorithmes deep-Q learning). La principale limitation de cette approche est qu'elle est basée sur un codage de l'environnement d'exécution en termes d'états, car le nombre d'états augmente exponentiellement avec le nombre de nœuds de calcul et de tâches. Cela rend cette approche non applicable lorsque le nombre d'états est important. Cette thèse proposera une solution aux problèmes d'ordonnancement et d'affectation de tâches en ligne dans un environnement dynamique, en minimisant la consommation d'énergie, sous des contraintes de latence (la latence est l'intervalle de temps entre le moment où une tâche est déclenchée par un élément du bord et le moment où le résultat arrive sur ce même élément). Cette thèse proposera également une solution à cette limitation prédominante de l'approche d'apprentissage par renforcement provenant du très grand nombre d'états du système.