Algorithmes d’ordonnancement temps réel

Slides:



Advertisements
Présentations similaires
Intégration et Harmonisation du plan d’action national du MAEP dans les programmes de développement nationaux Mme Hodane Aden Youssouf Division de la gouvernance.
Advertisements

ATELIER 1 ATELIER 1 Module 3 TICE et développement professionnel
Placement de Motifs Architecture Application Contraintes: - Charge
Fabrice Lauri, François Charpillet, Daniel Szer
Le routage optique.
AS « Sécurité des Logiciels Embarqués » Axe 3 : Modèles pour la Disponibilité et la Survivabilité Frédéric Cuppens Directeur de recherches.
Université de Poitiers Laboratoire d Informatique Scientifique et Industrielle E.A LISI - ENSMA et Université de Poitiers Responsables Francis Cottet.
Types des systèmes d’exploitation
Critère d’ordonnancement en temps réel Partie II
Critère d’ordonnancement en temps réel Partie III
Critères d’ordonnancement en temps réel Partie I
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
Emmanuel COLLOD et Michel DELIGNY
Des systèmes classiques aux systèmes temps réels
Introduction Qu'est ce que le temps-réel ?
Plan Ordonnancement Obtention des tests de faisabilité entre processus
Mémoire & Processus Cours SE - SRC
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Le 19/ 11/ Modèle de tarification planifiée pour les réseaux mobiles Mustapha OUGHDI Alexandre CAMINADA Sid LAMROUS.
Ordonnancement des mouvements de deux robots
Plus rapide chemin bicritère : un problème d’aménagement du territoire
                                        République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche Scientifique.
Pourquoi et comment développer la relation client ?
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
6.1 URDL22005 Systèmes dexploitation Ordonnancement du CPU Concepts de Base Critères dOrdonnancement Algorithmes dOrdonnancement Ordonnancement Multi-Processeur.
Introduction aux Systèmes d’information Temps Réel
CHALLENGE ROADEF 2001 Résolution par une métaheuristique à base de recherche à voisinage variable et propagation par contraintes Fabrice BUSCAYLET Fabrice.
Les Systèmes Multi-Agents pour la Gestion de Production
ADR Active and Dynamic Routing. Plan Introduction au routage Les réseaux actifs Les agents Mise à jour des matrices de routage Architecture du routage.
Aide à la décision et à la négociation dans un problème de gestion de production distribuée Jean-Pierre Camalot et Patrick Esquirol LAAS-CNRS 7, avenue.
L'équilibrage de charge Utilisation, principe et solutions
Allocation de mémoire Allocation de mémoire.
GPA750 Les ateliers multigammes Chapitre 5
Universté de la Manouba
Vincent Thomas Christine Bourjot Vincent Chevrier
Module 2 : Préparation de l'analyse des performances du serveur
Fanny Pascual - Laboratoire d’Informatique de Grenoble (LIG)
Ordonnancement de tâches
GPA750 – Gestion de Projets
Programmation linéaire en nombres entiers : les méthodes de troncature
Cours Temps Réel [© tv 2003] Définition Caractéristiques
Qu’est-ce qu’un système d’exploitation ?
L ’Ordonnancement Ordonnancement.
Test de non régression Optimisez vos tests, Réduisez votre budget.
Temps Réel Barat Christian
Adaptation dynamique de la puissance des systèmes embarqués :
Algorithmes Parallèles et Systèmes Réparties
les méthodes de recherche locale
Cours des Systèmes d’exploitations
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois La technique du pipeline.
1 Samir Tata Contrôle des interactions dans les applications coopératives.
Module 8 : Surveillance des performances de SQL Server
Définitions Gestion Exemple
Interactions entre Processus
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Performance de circuits.
Algorithmes Branch & Bound
Foued Mnasri Weal Rekik
Programmation Système et Réseau
Université Pierre et Marie Curie Laboratoire d’Informatique de Paris VI Département ASIM Analyse et résultats sur le dimensionnement des mémoires pour.
Initiation à la conception des systèmes d'informations
A) Avec l’ordonnancement Rate Monotonic les priorités des processus suivent l’ordre inverse des périodes : P1 est prioritaire sur P2, lui-même prioritaire.
François CARCENAC,Frédéric BONIOL ONERA-DTIM Zoubir MAMMERI IRIT
Optimisation pour la Conception de Systèmes Embarqués
Sujet 5 : Intégration d’une loi d’ordonnancement dans un modèle
Programmation dynamique
Ordonnancement (Scheduling)
Systèmes d’exploitation Processus conclusion Modèle conceptuel de processus Pour masquer les effets des interruptions, les SE fournissent un modèle conceptuel.
Ordonnancement en présence d’agents individualistes
5 – PARALLELISME , ORDONNANCEMENT
Transcription de la présentation:

Algorithmes d’ordonnancement temps réel

Temps réel « Un système Temps Réel est un système d'informations dont les corrections ne dépendent pas uniquement du résultat logique des algorithmes mais aussi de l'instant où ces résultats ont été produits » [1] adaptation aux événements externes Fonctionnement au contenu sans réduire le débit Temps de calcul connus et modélisables pour permettre l'analyse de la réactivité.

Problème / Solution Le problème de Temps Réel apparaît quand le système est constitués de plusieurs tâches et qu'il est nécessaire de diviser la puissance du ou des processeurs entre elles [2] Identification de tâche à réaliser et les contraintes temporelles qui doivent être satisfaites. Écriture du code Temps d'exécution de chaque tâche est mesuré et un test de rendez-vous horaire est réalisé pour vérifier qu'aucune tâche ne dépassera son temps limite

Tâches Les tâches peuvent être identifiées par trois valeurs de temps : Période de la tâche ; Temps limite pour la tâche ; Temps de calcul maximal pour la tâche.

Critères des tâches Arrivées des tâches " Périodiques : arrivée à intervalles réguliers (Pi) • Date d’activation initiale, offset Oi • Si pour tout i,j Oi=Oj, tâches synchrones • Si Di = Pi, tâche à échéance sur requête • Hyper période: cycle d’ordonnancement: intervalle [0,PPCM(Pi)] pour tâches synchrones, [min(Oi), max(Oi,Oj+Dj) + 2 * PPCM(Pi)] sinon " Sporadiques : on connaît une borne minimale sur l’intervalle entre deux arrivées • Apériodiques : tout ce qui ne rentre pas dans les deux catégories précédentes • Synchronisations (donc blocages potentiels) • Ressources partagées • Précédences

R – le moment de la première requête d’exécution de la tâche,  C – la durée d’exécution maximale de la tâche, quand elle dispose du processeur pour elle seule (le coût d’exécution), D – le délai critique acceptable pour l’exécution de la tâche (l’échéance), P – la période, s’il s’agit d’une tâche périodique. [2]

En ligne Hors ligne Ordonnancements Monoprocesseur Multiprocesseur Statiques pilotés par table ; Statiques préemptifs basés sur des priorités ; Dynamiques basés sur une planification de l’exécution ; Dynamiques basés sur la notion du meilleur effort (best effort). En ligne Monoprocesseur Multiprocesseur Hors ligne

• L’ordonnancement par priorités statiques : Premier arrivé, premier servi (First-Come, First-Served – FCFS) où toutes les tâches ont la même priorité ; le tour de rôle ou tourniquet (Round Robin – RR) ; monotone par fréquences (Rate-Monotonic – RM) ; monotone par échéances (« Invers Deadline » - ID, ou « Deadline Monotonic » -DM) • L’ordonnancement par priorités dynamiques : Earliest Deadline First – EDF ; Least Slack Scheduling – LLS, ou Least Laxity First – LLF, ou Shortest Slack Time – SST.

Processus de résolution d’un problème d’ordonnancement

Rate Monotonic T1(R1=0, C1=3, P1=20), T2(R2=0, C2=2, P2=5) et T3(R3=0, C3=2, P3=10)

Deadline Monotonic T1(R1=0, C1=3, D1=7, P1=20), T2(R2=0, C2=2, D2=4, P2=5) et T3(R3=0, C3=2, D3=9, P3=10)

Earliest Deadline First T1(R1=0, C1=3, D1=7, P1=20), T2(R2=0, C2=2, D2=4, P2=5) et T3(R3=0, C3=1, D3=8, P3=10)

Least Laxity First τ1(r0 = 0, C = 3, D = 7, T = 20), τ2(r0 = 0, C = 2, D = 4, T = 5), τ3(r0 = 0,C = 1,D = 8, T = 10)

Least Laxity First Nous définissons la laxité d’une instance comme étant la durée entre la fin de son exécution et son échéance. Lorsqu’une instance est activée, sa laxité correspond à son échéance moins sa durée d’exécution plus la somme des durées d’exécution restantes des instances de plus haute priorité. [3]

Ordonnancement des tâtes apériodiques Background scheduling: first-come-first-served strategy Tâches périodiques L'avantage majeur de fond ordonnancement est sa simplicité. Cependant, son principal inconvénient est que, pour des charges élevées en raison de tâches périodiques, temps de réponse apériodique demandes peuvent être élevés.

Polling server

Slack stealing and joint scheduling techniques Deferrable server sporadic server Slack stealing and joint scheduling techniques These two techniques are quite similar and both use the laxity of the periodic tasks to schedule aperiodic tasks. With the first method, called slack stealing, the tasks are scheduled with the RM algorithm. With the second method, called joint scheduling, the tasks are scheduled with the EDF algorithm.

Ordonnancement des tâches dépendantes Contrainte de précedence qui correspend à la synchronisation et communication entre les tâches Precedende avec ordonnancement par RM Precedende avec ordonnancement par EDF Contrainte d’exlusion mutuelle pour le partage des ressources , memoire et registres…

Multiprocessor Scheduling Destiner pour résoudre les problèmes d’optimisation d’ordonnancement en ligne

Approches pour résoudre le problème Partitionné Partitionner les tâches en m sous-ensemble (nombre de processeurs) Pas de migration de tâches d’un processeur vers un autre Globale Appliquer une stratégie unique d’ordonnancement Autorisation de migration Semi partitionné

Algorithmes d’ordonnancement partitionné First-Fit Next-Fit Best-Fit Worst-Fit d'affecter chaque tâche au premier processeur trouve tel que l'ordonnanceur local peut l'or- donnancer avec les tâches deja aectees

Algorithmes d’ordonnancement global G-EDF Pfair : optimal Définir une fonction binaire Introduire le décalage en temps (lag) [2]

DP-Fair : Deadline Partitionning Fair Abstraction du T-L Plane DP-WRAP : tâches sporadiques LLREF : Largest Local Remaining Execution Time First BF : Boundary Fair Diffère de PFair dans le sens ou la contrainte de uidite est assouplie pour ne porter que sur ces echeances [Levin et al. 2010] les tâches partagent la même date d'echeance

Algorithmes d’ordonnancement semi partitionné Les algorithmes semi-partitionnes se situent entre ces deux extrêmes et proposent d'autoriser une migration contrôlée de certaines tâches. Ils peuvent donc être vus comme une amélioration des algorithmes partitionnes en ajoutant plus de flexibilité mais ils s'inspirent aussi des politiques globales. [2] Proposer un compromis entre le taux d'utilisation maximum du système et le nombre de préemptions

Proposition L’application du domaine d’intelligence artificielle sur l’ordonnancement temps réel par le biais des réseaux de neurones pour une meilleur optimisation [1]

Conclusion Les algorithmes globaux ou semi partitionnés restent théoriques et ne tiennent généralement pas compte des surcoûts a l’exécution dû aux migrations, aux préemptions et aux temps de calcul de l'algorithme. Intégrer et adapter ces ordonnanceurs à une machine virtuelle embarqué temps réel

[1] Yahyaoui Khadidja, L’apport des outils de lintelligence artificielle dans les systèmes temps réel: ordonnancement des tâches, université d’Oran 2013 [2] Dana - Mihaela ROHÁRIK VÎLCU, SYSTÈMES TEMPS RÉEL EMBARQUÉS, Ordonnancement optimal de tâches pour la consommation énergétique du processeur, Université Paris XII – Val de Marne 2004 [3] Frédéric Fauberteau1 Laurent George, Damien Masson,Serge Midonnet, Ordonnancement multiprocesseur global basé sur la laxité avec migrations restreintes, Saint-Étienne : France 2011 [4] Maxime Cheramy1, Anne-Marie Deplanche, and Pierre-Emmanuel Hladik ,Ordonnancement temps réel, des politiques monoprocesseurs aux politiques multiprocesseurs, [5] Francis Cottet LISI/ENSMA, Joelle Delacroix Claude Kaiser, Zoubir Mammeri, Scheduling in Real-Time Systems, France 2002