Ordonnancement temps réel multiprocesseur pour la réduction de la consommation énergétique des systèmes embarqués



Documents pareils
Ordonnancement temps réel

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Ordonnancement temps réel et minimisation de la consommation d énergie

Equilibrage de charge (Load

Annexe 6. Notions d ordonnancement.

Ordonnancement et Power Management

Hétérogénéité pour atteindre une consommation énergétique proportionnelle dans les clouds

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Introduction aux systèmes temps réel. Iulian Ober IRIT

Ordonnancement sous contraintes de Qualité de Service dans les Clouds

Plus courts chemins, programmation dynamique

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

La recherche d informations sur le Web par les lycéens : Pourquoi et comment faciliter le travail collaboratif?

Elasticité logicielle pour optimiser l empreinte énergétique

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Thème 3 Conception et vérification d architectures de systèmes sur puce

Minimisation de la consommation énergétique à l'aide du système d'exploitation

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Pascale Betinelli CEA LIST. Demi-journée d'information ECHORD++ 20 avril M.E.N.E.S.R

MEAD : temps réel et tolérance aux pannes pour CORBA

Monitoring continu et gestion optimale des performances énergétiques des bâtiments

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Ordonnancement robuste et décision dans l'incertain

Transmission d informations sur le réseau électrique

Application de K-means à la définition du nombre de VM optimal dans un cloud

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Gestion réactive des opérations de maintien et d actualisation réglementaire et technologique des systèmes complexes.

Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

Dérivés Financiers Contrats à terme

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

FONCTION DE DEMANDE : REVENU ET PRIX

Mécanismes de protection dans AUTOSAR OS

Gestion optimale des unités de production dans un réseau compte tenu de la dynamique de la température des lignes

Continuité et dérivabilité d une fonction

Conception des systèmes répartis

La problématique des tests. Cours V. 7 mars Comment quantifier la performance d un test? Hypothèses simples et composites

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Expérience 3 Formats de signalisation binaire

SYSTEMES DE TRANSFERT STATIQUE: CEI 62310, UNE NOUVELLE NORME POUR GARANTIR LES PERFORMANCES ET LA SÉCURITÉ

Microsoft Virtual Server, trucs et astuces avancés

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Introduction au temps réel

Chapitre 5 : Flot maximal dans un graphe

Initiation au HPC - Généralités

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Efficacité énergétique des réseaux de cœur et d accès

Chapitre 10 Arithmétique réelle

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

Principe de symétrisation pour la construction d un test adaptatif

Systèmes et exécutifs temps-réel

Sécurité du cloud computing

Revue d article : Dynamic Replica Placement for Scalable Content Delivery

Comportements (The Observer XT) : activité générale du conducteur : (entre autres) mouvements des mains, position, verbalisations.

Polar. Nouveautés Polar

Allocation Robuste et Restrictions sur les Contributions au Risque

Les apports de l informatique. Aux autres disciplines

Économie d énergie dans les centrales frigorifiques : La haute pression flottante

Optimisation et Processus métier

Commande Prédictive des. Convertisseurs Statiques

Partie 7 : Gestion de la mémoire

Maintenance du cooling SUX1. Maintenance preventive Maintenance corrective Nouveau circuit SDX1 Nouveau systeme controle PVSS

Quels enseignements de l expérience française ( )

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

Le passage à l échelle de serveur J2EE : le cas des EJB

Domosol : Système solaire combiné (SSC) de production d eau chaude et chauffage

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Premier ordre Expression de la fonction de transfert : H(p) = K

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

1 Mesure de la performance d un système temps réel : la gigue

Outils logiciels pour la combinaison de vérification fonctionnelle et d évaluation de performances au sein de CADP

Ordonnancement des applications temps réel réparties

Q&A 1. Qu est ce que AdKash? 2. Pourquoi AdKash est innovative par rapport aux autres systèmes de publicité Mobile?

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU

Simulation centrée individus

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

Gestion de projets logiciels. Xavier Dubuc

Intégration de la dimension sémantique dans les réseaux sociaux

1 - Le catalogue d états prêts à l emploi p.2

Techniques d interaction dans la visualisation de l information Séminaire DIVA

A GRASPxELS approach for the Job Shop with generic time-lags and new statistical determination of the parameters

Cours A7 : Temps Réel

Solutions logicielles de gestion énergétique coopérante smart building in smart grid : Exemple CANOPEA. Xavier Brunotte info@vesta-system.

Impact de choix d implantation sur les performances d une application de Contrôle-Commande

Groupe de Discussion Big Data Aperçu des technologies et applications. Stéphane MOUTON

Principe ALARA mis en place lors de la phase de conception des cyclotrons. Ch. Bouvy; J-M. Geets; B. Nactergal 11/06/14

Une solution simple pour vos patients complexes

Extension d'un outil de trace pour système embarqué temps réel. Encadrants : Laurent Pautet, Jérôme Hugues

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Essais précoces non comparatifs : principes et calcul du nombre de sujets nécessaire

Energy Logic : Emerson Network Power. Feuille de route pour la réduction r de la consommation d'énergie dans le Centre de données

Transcription:

Soutenance de thèse Ordonnancement temps réel multiprocesseur pour la réduction de la consommation énergétique des systèmes embarqués Vincent LEGOUT Directeurs de thèse : Laurent PAUTET, Mathieu JAN CEA NanoInnov Mardi 08 Avril 2014

Introduction Plan 1 Introduction 2 Approche hybride 3 Systèmes temps réel dur 4 Systèmes temps réel à criticité mixte 5 Conclusion & Perspectives 2 / 43

Introduction Domaine d application Systèmes temps réel multiprocesseurs embarqués Validité d un système temps réel = f(résultat, date) Évolution des systèmes temps réel embarqués Les systèmes multiprocesseurs remplacent les systèmes monoprocesseurs Puissance de calcul accrue Temps réel dur : dépassements d échéances interdits Temps réel à criticité mixte : dépassements d échéances autorisés pour les tâches de faible criticité Application composée de tâches de différents niveaux de criticité 3 / 43

Introduction Contraintes d applications Réduction de la consommation statique des processeurs Consommations dynamique et statique Dynamique : dépend de la vitesse du processeur Statique : constante, due aux courants de fuite source : Roy et al., 2003 Évolution des processeurs Miniaturisation Augmentation de la densité Puissance statique majoritaire source : ITRS 4 / 43

Introduction États basse-consommation Contraintes d ordonnancement des états basse-consommation Délai de transition Del s pour revenir à l état actif Pénalité énergétique Pen s associée BET s (Break Even Time) : taille minimale de la période d inactivité pour activer l état basse-consommation Cons actif BET s Del s Cons sommeil 5 / 43

Introduction État de l art Intégration des états basse-consommation dans l ordonnancement Illustration avec 2 tâches : τ 1 τ 2 WCET 1 2 Période 4 6 Activation d un état basse-consommation à t = 3, quelle est la date maximale de réveil pour qu aucune échéance ne soit violée? De Lee et al. (ECRTS 03) à Awan et al. (RTNS 13) 6 / 43

Introduction État de l art Intégration des états basse-consommation dans l ordonnancement Illustration avec 2 tâches : τ 1 τ 2 WCET 1 2 Période 4 6 Activation d un état basse-consommation à t = 3, quelle est la date maximale de réveil pour qu aucune échéance ne soit violée? t = 7 De Lee et al. (ECRTS 03) à Awan et al. (RTNS 13) 6 / 43

Introduction État de l art Algorithmes existants pour systèmes multiprocesseurs Approches partitionnées (migrations interdites) Chen et al. (2006) : partitionnement optimisant la taille des périodes périodes d inactivité Limitations : créer des périodes d inactivité sur chaque processeur Seo et al. (2008), Huang et al. (2010) : migrations restreintes Approches globales (migrations autorisées) AsDPM (Bhatti et al. (2009)) : minimise le nombre de processeurs Limitations : complexité importante (O(n 3 ) avec n tâches), algorithme en-ligne non optimal au regard de l utilisation des processeurs 7 / 43

Introduction Objectif Objectifs pour la réduction de la consommation statique Réduire la consommation énergétique des processeurs Activer les états basse-consommation les plus économes en énergie Intégrer les contraintes dans l ordonnancement Optimiser la taille de toutes les périodes d inactivité Autoriser les préemptions et migrations Retarder les exécutions des tâches Garder une complexité en-ligne réduite 8 / 43

Approche hybride Plan 1 Introduction 2 Approche hybride 3 Systèmes temps réel dur 4 Systèmes temps réel à criticité mixte 5 Conclusion & Perspectives 9 / 43

Approche hybride Approche générale Division hors-ligne et en-ligne Hors-ligne Calcul de la répartition des tâches En-ligne Ensemble de tâches Contraintes temporelles Objectifs énergétiques Ordonnancement partiel Choix des priorités Exploitation du slack time Hors-ligne : garantir un gain énergétique minimal hors-ligne En-ligne : étendre les périodes d inactivité existantes 10 / 43

Approche hybride Modèle Ensemble de tâches périodiques à échéances implicites Tâches synchrones caractérisées par leur WCET et leur période Migrations et préemptions autorisées Utilisation globale U : m 1 < U < m (m processeurs) Division de l hyperpériode en intervalles Frontières des intervalles : dates d activation des travaux Distribution des travaux de 3 tâches périodiques τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 H = 12, 4 intervalles 11 / 43

Approche hybride Hors-ligne Calcul de la répartition des tâches sur les intervalles Calcul du poids de chaque travail sur chaque intervalle w j,k : poids du travail j sur l intervalle k Poids : portion de l intervalle utilisée par un travail Temps d exécution sur un intervalle : poids taille de l intervalle Distribution des poids : τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 12 / 43

Approche hybride Hors-ligne Traduction des contraintes temporelles Limite l utilisation du processeur dans chaque intervalle : J k : ensemble des travaux de l intervalle k k, w j,k m j J k Limite l utilisation de chaque tâche dans chaque intervalle : k, j, 0 w j,k 1 Garantit que tous les travaux sont exécutés : I k : taille de l intervalle k E j : ensemble des intervalles où j est présent j.c : WCET du travail j j, w j,k I k = j.c k E j 13 / 43

Approche hybride Hors-ligne Modélisation des périodes d inactivité Nouvelle tâche τ représentant l inactivité du système Tâche caractérisée par un WCET et une période Poids de la tâche τ : w k Période Utilisation H m U U = m, tous les processeurs sont toujours actifs Une exécution de τ représente une période d inactivité 14 / 43

Approche hybride En-ligne Choix des priorités dans les intervalles Utilisation de FPZL (Fixed Priority with Zero Laxity) Ordonnancement des tâches suivant leur priorité et lorsque la laxité d une tâche devient nulle Algorithme d ordonnancement optimal à l intérieur des intervalles Plus le poids d une tâche est important, plus sa priorité est importante Priorité particulière à τ pour étendre les périodes d inactivité 15 / 43

Approche hybride Cadres d application Contraintes et objectifs suivant le cadre d application Temps réel dur : dépassements d échéances interdits, 2 approches Minimiser le nombre de transitions entre les états basse-consommation et l état actif Minimiser la consommation énergétique Temps réel à criticité mixte : dépassements d échéances autorisés pour les tâches à faible criticité Hors-ligne : sous-estimer le WCET des tâches à faible criticité En-ligne : compenser cette sous-estimation en exploitant les marges entre le temps d exécution réel et le WCET 16 / 43

Systèmes temps réel dur LPDPM1 Application : temps réel dur et à criticité mixte Hors-ligne Calcul de la répartition des tâches En-ligne Ensemble de tâches Contraintes temporelles Objectifs énergétiques Ordonnancement partiel Choix des priorités Exploitation du slack time Minimisation du nombre de périodes d inactivité Minimisation de la consommation énergétique Extension périodes d inactivité existantes Exécution tâches à faible criticité LPDPM1 LPDPM2 LPDPM-MC 17 / 43

Systèmes temps réel dur LPDPM1 Minimisation du nombre de préemptions de τ Ordonnancement avec les contraintes uniquement, sans tâche τ τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 5 périodes d inactivité 18 / 43

Systèmes temps réel dur LPDPM1 Minimisation du nombre de préemptions de τ Ordonnancement avec les contraintes uniquement, sans objectif Suppression d une période d inactivité sur I 4 car τ ne peut être exécutée sur 2 processeurs en même temps τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 De 5 à 4 périodes d inactivité 19 / 43

Systèmes temps réel dur LPDPM1 Minimisation du nombre de préemptions de τ Minimisation des préemptions dans les intervalles Favoriser les intervalles plein (w k = 1) et vide (w k = 0) Ajouter 2 variables binaires f k et e k f k = { 0 si wk = 1 1 sinon e k = { 0 si wk = 0 1 sinon Objectif : Minimiser k f k + e k τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 De 5 à 3 périodes d inactivité 20 / 43

Systèmes temps réel dur LPDPM1 Minimisation du nombre de préemptions de τ Minimisation des préemptions entre 2 intervalles consécutifs Faire que les intervalles où f k = 0 soient consécutifs (resp e k = 0) Ajouter 2 variables binaires fc k et ec k fc k = { 1 si fk = 1 et f k+1 = 0 0 sinon ec k = { 1 si ek = 1 et e k+1 = 0 0 sinon Objectif : Minimiser k f k + e k + fc k + ec k τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 De 5 à 2 périodes d inactivité 21 / 43

Systèmes temps réel dur LPDPM1 Minimisation du nombre de préemptions de τ Choix de la priorité de τ en début d intervalle Plus haute priorité si un état basse-consommation est actif Plus faible priorité sinon Exploitation du slack time pour réduire la consommation énergétique Slack time donné à τ pour étendre la période d inactivité courante τ 1 τ 2 τ 3 WCET 0.8 2.4 4 Période 4 4 6 De 5 à 1 seule période d inactivité! 22 / 43

Systèmes temps réel dur LPDPM2 Application : temps réel dur et à criticité mixte Hors-ligne Calcul de la répartition des tâches En-ligne Ensemble de tâches Contraintes temporelles Objectifs énergétiques Ordonnancement partiel Choix des priorités Exploitation du slack time Minimisation du nombre de périodes d inactivité Minimisation de la consommation énergétique Extension périodes d inactivité existantes Exécution tâches à faible criticité LPDPM1 LPDPM2 LPDPM-MC 23 / 43

Systèmes temps réel dur LPDPM2 Minimisation de la consommation énergétique LPDPM1 : minimisation du nombre de transitions Ne connait pas la taille des périodes d inactivité hors-ligne Ne tient pas compte des caractéristiques des états basse-consommation, périodes d inactivité de taille inférieure au BET Illustration avec 3 tâches et 2 périodes d inactivité Si BET = 3, impossible d activer un état basse-consommation dans la 2ème période d inactivité du scénario de gauche 24 / 43

Systèmes temps réel dur LPDPM2 Modélisation des périodes d inactivité Nécessite de calculer la taille et la consommation énergétique de chaque période d inactivité τ exécutée en début et fin d intervalle Division de τ en deux sous-tâches τ b et τ e Choix similaire à LPDPM1 fait maintenant hors-ligne Une période d inactivité par intervalle (de taille q k ) Complexité dépendant du nombre d intervalles de manière exponentielle 25 / 43

Systèmes temps réel dur LPDPM2 Calcul de la consommation énergétique Consommation énergétique de la période d inactivité de l intervalle k avec l état basse-consommation s : Cons s : consommation de l état basse-consommation s Pen s : pénalité énergétique de l état basse-consommation s P k,s = Cons s q k + Pen s Fonction objectif finale : Minimiser k P k 26 / 43

Systèmes temps réel dur Évaluation Comparaison entre LDPDPM1, LPDPM2, RUN et U-EDF Critères d évaluation : Utilisation des états basse-consommation Consommation énergétique Nombre de préemptions RUN et U-EDF : algorithmes multiprocesseurs optimaux Meilleurs algorithmes d ordonnancement multiprocesseurs optimaux pour réduire le nombre de préemptions et de migrations Aucun autre algorithme d ordonnancement multiprocesseur optimal minimisant la consommation statique 27 / 43

Systèmes temps réel dur Évaluation Conditions de simulation Ensembles de 10 tâches ordonnancées sur 2 hyperpériodes 4 processeurs : utilisation globale entre 3 et 4 Pour chaque utilisation globale 500 ensembles de tâches aléatoires Programme linéaire résolu avec CPLEX (1 min par résolution) Calcul de la consommation quand les processeurs sont inactifs États basse-consommation : Mode Consommation énergétique Délai de transition Run 1 Sleep 0.5 0.01ms Stop 0.1 2ms Standby 0.00001 10ms 28 / 43

Systèmes temps réel dur Évaluation Consommation de LPDPM1 plus faible que LPDPM2 Consommation énergétique normalisée de LPDPM2 par rapport à LPDPM1 1.8 1.6 1.4 1.2 LPDPM2 Optimalité des poids (%) m LPDPM1 LPDPM2 2 100 23 4 99 0.1 8 88 0 3 3.2 3.4 3.6 3.8 4 Utilisation globale Différence plus importante quand l utilisation est proche de 3, due à la non-optimalité des solutions de LPDPM2 29 / 43

Systèmes temps réel dur Évaluation Répartition des activations des états basse-consommation 10 5 1 0.5 0 RUN U-EDF LPDPM1 Sleep Stop Standby LPDPM1 utilise davantage l état basse-consommation le plus efficace Standby, RUN et U-EDF activent essentiellement les états Sleep et Stop 30 / 43

Systèmes temps réel dur Évaluation Consommation réduite et nombre de préemptions similaire Consommation énergétique normalisée par rapport à LPDPM 10 8 6 4 2 RUN U-EDF 3 3.2 3.4 3.6 3.8 4 Utilisation globale Nombre de préemptions 500 400 300 3 3.2 3.4 3.6 3.8 4 Utilisation globale RUN U-EDF LPDPM1 Consommation énergétique jusqu à 10 fois plus faible avec LPDPM 31 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Application : temps réel dur et à criticité mixte Hors-ligne Calcul de la répartition des tâches En-ligne Ensemble de tâches Contraintes temporelles Objectifs énergétiques Ordonnancement partiel Choix des priorités Exploitation du slack time Minimisation du nombre de périodes d inactivité Minimisation de la consommation énergétique Extension périodes d inactivité existantes Exécution tâches à faible criticité LPDPM1 LPDPM2 LPDPM-MC 32 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Compromis entre consommation et taux de défaillances 2 niveaux de criticité : Haute criticité : temps réel dur Faible criticité : dépassements d échéances autorisés Présence d une marge importante entre temps d exécution et WCET Utilisation de cette marge pour les tâches à faible criticité pour augmenter la taille des périodes d inactivité Peut entrainer des dépassements d échéances pour ces tâches à faible criticité 33 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Réduction du temps processeur réservé aux tâches à faible criticité Ne réserver qu un pourcentage du WCET pour les tâches à faible criticité, pourcentage représenté par la variable α [0, 1] j lo : ensembles des travaux à faible criticité j lo, k E j w j,k I k = α j.c Possible de désactiver un ou plusieurs processeurs pour que m 1 < U < m soit toujours vérifié 2 1 10 2 Utilisation de la distribution des temps d exécution pour choisir α (e.g. Gumbel) 0 0 20 40 60 80100 % WCET 34 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Illustration de l exploitation du slack time en-ligne τ 1 τ 2 τ 3 τ 4 Poids 4 3 3 2 Criticité Haute Haute Faible Faible Dépassements d échéances pour τ 3 et τ 4 35 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Illustration de l exploitation du slack time en-ligne τ 1 τ 2 τ 3 τ 4 Poids 4 3 3 2 Criticité Haute Haute Faible Faible t = 3.5, τ 1 termine, 0.5 unité de slack time libérée, donnée à τ 36 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Illustration de l exploitation du slack time en-ligne τ 1 τ 2 τ 3 τ 4 Poids 4 3 3 2 Criticité Haute Haute Faible Faible t = 4.5, τ termine, réveil du processeur π 1 36 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Illustration de l exploitation du slack time en-ligne τ 1 τ 2 τ 3 τ 4 Poids 4 3 3 2 Criticité Haute Haute Faible Faible t = 5.5, τ 2 termine, 1 unité de slack time libérée, donnée à τ 3 et τ 4 36 / 43

Systèmes temps réel à criticité mixte LPDPM-MC Illustration de l exploitation du slack time en-ligne τ 1 τ 2 τ 3 τ 4 Poids 4 3 3 2 Criticité Haute Haute Faible Faible t = 8, fin de l intervalle, aucun dépassement d échéance pour τ 3 et τ 4, aucune création de période d inactivité 36 / 43

Systèmes temps réel à criticité mixte Évaluation Conditions de simulation Différentes valeurs de α : 0.2, 0.4, 0.6 & 0.8 Environnement de simulation similaire à LPDPM 4 processeurs, 10 tâches Utilisation globale entre 3 et 4 500 ensembles de tâches générés aléatoirement 4 tâches à haute criticité, 6 tâches à faible criticité Les tâches à haute criticité utilisent leur WCET Les tâches à faible criticité utilisent leur temps d exécution estimé Calculé en utilisant la distribution de Gumbel 37 / 43

Systèmes temps réel à criticité mixte Évaluation Consommation et taux de défaillances Consommation énergétique 1 0.9 0.8 0.7 3 3.2 3.4 3.6 3.8 4 Utilisation globale Dépassements d échéances (%) 20 10 0 3 3.2 3.4 3.6 3.8 4 Utilisation globale α = 0.2 α = 0.4 α = 0.6 α = 0.8 Plus α est faible, plus la consommation énergétique est réduite et plus le taux de défaillances est important (α = 0.4 compromis acceptable) 38 / 43

Conclusion & Perspectives Plan 1 Introduction 2 Approche hybride 3 Systèmes temps réel dur 4 Systèmes temps réel à criticité mixte 5 Conclusion & Perspectives 39 / 43

Conclusion & Perspectives Conclusion Conclusion Approche hybride pour la conception d algorithmes d ordonnancement multiprocesseurs optimaux minimisant la consommation statique Premier algorithme d ordonnancement multiprocesseur de cette classe Programmation linéaire hors-ligne garantissant un gain énergétique minimal Ordonnancement en-ligne dépendant du contexte applicatif Temps réel dur : 2 approches minimisant respectivement le nombre de transitions et la consommation énergétique Consommation énergétique jusqu à 10 fois inférieure et nombre de préemptions similaire aux algorithmes existants Temps réel à criticité mixte : exploitation de la marge entre temps d exécution réel et WCET pour réduire la consommation Consommation réduite de 16%, taux de défaillances de moins de 6% 40 / 43

Conclusion & Perspectives Perspectives Perspectives Implémentation et calcul de la consommation sur un système réel Approfondissement des évaluations entre LPDPM1 et LPDPM2 Identification du nombre d intervalles comme facteur critique Proposition d une solution hybride entre LPDPM1 et LPDPM2 Consommation énergétique vs taille maximale de l hyperpériode 1.2 LPDPM2 1 0 200 400 Taille de l hyperpériode 41 / 43

Conclusion & Perspectives Perspectives Perspectives Approche duale pour systèmes temps réel à criticité mixte Gain énergétique fixé et minimisation du taux de défaillances Couplage avec les modèles thermiques et de fiabilité Activation d états basse-consommation sur 2 processeurs simultanément 42 / 43

Conclusion & Perspectives Publications & Communications Conférence Reducing Static Energy Consumption on Multiprocessor Real-Time Systems w/ Mathieu Jan and Laurent Pautet. 21st International Conference on Real-Time Networks and Systems (RTNS). Nice. Octobre 2013. Outstanding Paper & Best Student Paper Award. Soumission Journal Scheduling Algorithms to Reduce the Static Energy Consumption of Real-Time Systems. w/ Mathieu Jan and Laurent Pautet. Journal of Real-Time Systems. Workshops Mixed-Criticality Multiprocessor Real-Time Systems : Energy Consumption vs Deadline Misses w/ Mathieu Jan and Laurent Pautet. 1st workshop on Real-Time Mixed Criticality Systems (ReTiMiCS). Taipei, Taiwan. Août 2013. An off-line multiprocessor real-time scheduling algorithm to reduce static energy consumption w/ Mathieu Jan and Laurent Pautet. 1st Workshop on Highly-Reliable Power-Efficient Embedded Designs (HARSH). Shenzhen, China. Février 2013. École d Été Réduction de la consommation statique des systèmes temps réel multiprocesseurs w/ Mathieu Jan and Laurent Pautet. École d Été Temps Réel. Toulouse. Août 2013. Séminaire Séminaire MeFoSyLoMa (Méthodes Formelles pour les Systèmes Logiciels et Matériels). ENS Cachan. Mars 2013. 43 / 43

44 / 43

Apport de la modélisation LPDPM2 par rapport à LPDPM1 τ 1 τ 2 τ 3 τ 4 τ 5 WCET 3.5 1 1 1 1 Période 4 6 8 8 8 LPDPM1 LPDPM2 45 / 43

Consommation énergétique normalisée de LPDPM2 vs LPDPM1 1.15 LPDPM2 1.1 1.05 1 0.95 3 3.2 3.4 3.6 3.8 4 Utilisation globale 46 / 43

Consommation énergétique normalisée en utilisant distribution Gumbel 2.25 RUN U-EDF 2.2 2.15 3 3.2 3.4 3.6 3.8 4 Utilisation globale 47 / 43

Consommation énergétique normalisée de LPDPM2 vs LPDPM1 1.01 LPDPM2 1.01 1 1 3 3.2 3.4 3.6 3.8 4 Utilisation globale 48 / 43

Consommation énergétique suivant le temps de résolution 1.08 1.06 LPDPM2 % optimalité suivant temps de résolution (min) 1.04 1.02 0 20 40 60 Temps de résolution (min) Temps LPDPM1 LPDPM2 1 100 0 5 100 0.02 10 100 0.02 60 100 0.03 49 / 43