Techniques d ordonnancement pour les SoC
|
|
- Arthur Vincent
- il y a 8 ans
- Total affichages :
Transcription
1 Techniques d ordonnancement pour les SoC Pierre Boulet équipe WEST Pierre.Boulet@lifl.fr Ordonnancement DEA informatique Lille p. 1/104
2 Plan Ordonnancement de tâches Placement sur SoC Ordonnancement de nids de boucles Cas du traitement de signal systématique Ordonnancement DEA informatique Lille p. 2/104
3 Ordonnancement de tâches Ordonnancement DEA informatique Lille p. 3/104
4 Le problème dans un contexte informatique ordonnancer des tâches sous-programmes processus fils d exécution affecter à chaque tâche une date d exécution (un processeur) avec contraintes de ressources ou non problème fondamental gestion efficace de la concurrence sur les architectures modernes Ordonnancement DEA informatique Lille p. 4/104
5 Références Computer and Job-Shop Scheduling Theory par Coffman chez John Willey & Sons, 1976 Task Scheduling in Parallel and Distributed Systems par El-Rewini, Lewis et Ali chez Prentice Hall, 1994 Scheduling Theory and Its Applications coordonné par Chrétienne, Coffman, Lenstra et Liu chez John Willey & Sons, 1995 Scheduling and Automatic Parallelization par Darte, Robert et Vivien chez Birkhäuser, 2000 Ordonnancement DEA informatique Lille p. 5/104
6 Exemple : programme séquentiel DO i = 1, n T^ache T i,i : x(i) = b(i) / a(i,i) DO j = i+1, n T^ache T i,j ENDDO : b(j) = b(j) - a(j,i) * x(i) ENDDO Résolution d un système triangulaire Ax = b A matrice de taille n n b et x vecteurs de taille n ordre séquentiel (< s ) des tâches : T 1,1 < s T 1,2 < s... < s T 1,n < s T 2,2 < s... < s T 2,n < s T 3,3 < s... < s T n,n Ordonnancement DEA informatique Lille p. 6/104
7 Exemple : graphe de tâches DO i = 1, n T^ache T i,i : x(i) = b(i) / a(i,i) DO j = i+1, n T^ache T i,j ENDDO : b(j) = b(j) - a(j,i) * x(i) ENDDO quelles tâches peuvent être calculées indépendamment? dépendances de données identifier les variables communes T i,i produit x(i) utilisé par T i,j, i < j n T i,j produit b(j) utilisé par T i+1,j Ordonnancement DEA informatique Lille p. 7/104
8 Dépendances exprimer la concurrence en respectant la sémantique du programme deux tâches sont dépendantes ( ) si elles accèdent à une même variable un des accès est une écriture conditions de Bernstein T T ou ou Lectures(T ) Ecritures(T ) Ecritures(T ) Lectures(T ) Ecritures(T ) Ecritures(T ) Ordonnancement DEA informatique Lille p. 8/104
9 Graphe de dépendances en cas de dépendance, respect de l ordre séquentiel construction d un ordre partiel ( ) (< s ) + clôture transitive de l intersection de la relation de dépendance et de l ordre séquentiel représentation par un DAG (graphe direct acyclique) omission habituelle des arcs de transitivité Ordonnancement DEA informatique Lille p. 9/104
10 Ord. sans communications définition du problème Entrée : graphe de tâches G = (V, E, w) nombre de sommets ( V ) fini arêtes (E) = contraintes de précédence sommets étiquetés par temps de calcul de la tâche (w : V N) Sortie : affectation (σ : V N) de dates de début d exécution pour chaque sommet respectant les contraintes de dépendances σ(u) + w(u) σ(v) pour tout (u, v) E Ordonnancement DEA informatique Lille p. 10/104
11 Ord. sans communications contraintes nombre de processeurs limité ou non un processeur n exécute qu une tâche à la fois alloc(t ) = alloc(t ) σ(t ) + w(t ) σ(t ) ou σ(t ) + w(t ) σ(t ) objectif : minimier la latence temps total d exécution L(σ) = max v V (σ(v) + w(v)) min v V σ(v) Ordonnancement DEA informatique Lille p. 11/104
12 Accélération définition : s(σ, p) = Seq L(σ, p) avec Seq = v V w(v) propriétés s(σ, p) p Seq = L opt (1)... L opt (p) L opt (p + 1)... L opt ( ) Ordonnancement DEA informatique Lille p. 12/104
13 Sans limite de ressources nombre de processeurs illimité définitions PRED(v) = prédécesseurs immédiats de v SUCC(v) = successeurs immédiats de v v est une entrée du DAG ssi PRED(v) = v est une sortie du DAG ssi SUCC(v) = niveau haut de v, nh(v) = plus grand poids d un chemin d une entrée à v (sans compter v) facile niveau bas de v, nb(v) = plus grand poids d un chemin de v à une sortie (en incluant v) Ordonnancement DEA informatique Lille p. 13/104
14 Ordonnancement optimal définition : σ free (v) = nh(v), v V ordonnancement au plus tôt théorème : σ free est optimal corrolaire : on peut trouver un ordonnancement optimal en temps O( V + E ) pas de délais de communication nombre de processeurs illimité remarque : σ free n est pas le seul ordonnancement optimal ordonnancement au plus tard Ordonnancement DEA informatique Lille p. 14/104
15 Exemple DO i = 1, n T^ache T i,i : x(i) = b(i) / a(i,i) DO j = i+1, n T^ache T i,j ENDDO ENDDO temps de calcul : w(t i,i ) = 2 w(t i,j ) = 1, i < j n L(σ free, ) = 3n 1 : b(j) = b(j) - a(j,i) * x(i) Ordonnancement DEA informatique Lille p. 15/104
16 Avec p processeurs mauvaise nouvelle NP-complet bonne nouvelle heuristiques garanties (au plus 2 optimal) heuristiques de liste difficile Ordonnancement DEA informatique Lille p. 16/104
17 Heuristiques de liste définition heuristiques gloutonnes à chaque pas de temps, démarrer le plus de tâches possible plusieurs choix possibles priorités tâche libre à l instant t v FREE(σ, t) σ(v) t et u PRED(v), σ(u) + w(u) t ordonnancement de liste aucun processeur n est laissé délibérément inactif t, FREE(σ, t) = r 1 et q processeurs disponibles démarrer min(r, q) tâches Ordonnancement DEA informatique Lille p. 17/104
18 Heuristiques de liste structures de données graphe G tableau A : # de prédécesseurs de chaque tâche tas Q : tâches prêtes valuées par priorité tas P : processeurs valués par date de fin d exécution pseudo-code Q=entrées(G); P =vide; t=-1; tant_que Q<>vide faire t =événement_suivant(p,t); Mise_à_jour(t,A,Q); Allocation(t,P,Q); t=t ; fin_tant_que complexité = O( V log V + E ) implémentation Ordonnancement DEA informatique Lille p. 18/104
19 Exemple DO i = 1, n T^ache T i,i : x(i) = b(i) / a(i,i) DO j = i+1, n T^ache T i,j ENDDO ENDDO temps de calcul : w(t i,i ) = 2 : b(j) = b(j) - a(j,i) * x(i) w(t i,j ) = 1, i < j n priorité = niveau bas n = 6, p = 2, L(σ chemin critique, p) = 17 Ordonnancement DEA informatique Lille p. 19/104
20 Ord. avec communications complique énormément les choses problème NP-complet même sans contrainte de ressources modélisation habituelle comm(t, T ) = O si alloc(t ) = alloc(t ) c(t, T ) sinon coût de communication indépendant des processeurs de plus en plus réaliste contraintes sur l ordonnancement e = (u, v) E, σ(u) + w(u) σ(v) si alloc(u) = alloc(v) σ(u) + w(u) + c(u, v) σ(v) sinon Ordonnancement DEA informatique Lille p. 20/104
21 Sans limite de ressources heuristique de Hanen et Munier garantie à au plus 4 3 de l optimal programmation linéaire relaxation en rationnels (polynomial) d un programme en entiers (NP-difficile) basée sur l idée de successeur favori l unique successeur de T vérifiant σ(t ) < σ(t ) + w(t ) + c(t, T ) Ordonnancement DEA informatique Lille p. 21/104
22 Avec p processeurs bien évidemment NP-complet deux classes d heuristiques (la plupart non garanties) heuristiques de liste heuristiques de regroupement (clustering) Ordonnancement DEA informatique Lille p. 22/104
23 Heuristiques de liste chemin critique naïf priorité = niveau bas calculé en supposant communication systématique chemin critique amélioré allouer une tâche libre au processeur qui permet son exécution le plus tôt en tenant compte des décisions déjà prises on peut allouer à un processeur non libre Ordonnancement DEA informatique Lille p. 23/104
24 Exemple DO i = 1, n T^ache T i,i : x(i) = b(i) / a(i,i) DO j = i+1, n T^ache T i,j ENDDO : b(j) = b(j) - a(j,i) * x(i) ENDDO temps de calcul : w(t i,i ) = 2, w(t i,j ) = 1, i < j n temps de communication uniformes = 4 n = 6, p = 2, L(σ chemin critique amélioré, p) = 28 moins bon que tous sur le même processeur! (Seq = 26) Ordonnancement DEA informatique Lille p. 24/104
25 Heuristiques de regroupement deux étapes regrouper des tâches allouer ces groupes et décider de l ordonnancement final regroupement toujours itératif faire diminuer le temps parallèle estimé plusieurs stratégies selon les plus longs chemins annuler les communications coûteuses une arête à la fois sur le plus long chemin courant heuristiques aussi pour la deuxième phase peu d arguments pour choisir :-( Ordonnancement DEA informatique Lille p. 25/104
26 Récapitulation graphe de dépendance ordonnancement sans communications sans limite de ressources algorithme polynomial optimal à p processeurs NP-complet, heuristiques garanties à 2 optimal ordonnancement avec communications sans limite de ressources NP-complet, heuristique garantie à 4 3 optimal à p processeurs NP-complet, heuristiques non garanties Ordonnancement DEA informatique Lille p. 26/104
27 Placement sur SoC Ordonnancement DEA informatique Lille p. 27/104
28 Contexte placement et ordonnancement d applications de contrôle/commande ou de traitement de signal contraintes temps réel sur architectures hétérogènes, distribuées, embarquées méthodologie Adéquation Algorithme Architecture (AAA) développée à l INRIA Rocquencourt, projet Sosso, puis action Ostre implémentée dans le logiciel SynDEx références web AAA : thèse de Thierry Grandpierre : Ordonnancement DEA informatique Lille p. 28/104
29 Démarche graphe de description de l architecture graphe de description de l algorithme flot de données placement et ordonnancement automatique heuristique de liste ordonnancement statique, non préemptif placement des calculs placement des données placement des communications objectif = minimiser la latence génération d un exécutif Ordonnancement DEA informatique Lille p. 29/104
30 Description de l architecture objectif permettre l ordonnancement granularité adaptée représenter fidèlement le comportement de l architecture prendre en compte les moyens de communications exprimer tout le parallélisme potentiel modéliser finement les arbitrages des ressources partagées graphe orienté sommets = machines à états finis Ordonnancement DEA informatique Lille p. 30/104
31 Modèle d architecture cinq types de sommets opérateurs mémoires RAM (registres, RAM partagées ou non) contenant données, programmes ou les deux memoires SAM (FIFOs) bus (bus/mux/demux/arbitres) communicateurs (DMA) liens représentent transferts possibles de données orientés Ordonnancement DEA informatique Lille p. 31/104
32 Principes de modélisation minimiser nombre de sommets encapsuler séquence de bux/mux/demux/arbitres dans un seul sommet encapsuler arbitre dans sommet RAM ou SAM règles chaque opérateur connecté à une RAM programme et au moins une RAM données chaque RAM partagée ou SAM connectée à au moins deux sommets opérateurs ou communicateurs pas de connexion directe entre RAM/SAM insertion de bus/arbitre là où nécessaire Ordonnancement DEA informatique Lille p. 32/104
33 Communicateurs séquenceur autonome d opérations de transfert de données nécessite connexion à une RAM contenant ces opérations modélise un canal de DMA + sa programmation par le processeur pas d équivalent matériel direct permet ordonnancement communications en concurrence avec calculs Ordonnancement DEA informatique Lille p. 33/104
34 Exemples simples d architectures architectures monoprocesseur générales Von Neumann Harvard DSP pouvant accéder simultanément à deux opérandes et une opération architectures multiprocesseurs régulières SIMD, MIMD à mémoire partagée/distribuée Ordonnancement DEA informatique Lille p. 34/104
35 à un communicateur et d autre part à l opérateur. Le Bus/Mux/Demux permet de sélectionner laquelle des SAM est accédée par l opérateur. Les deux ports de mémoires externes permettent à l opérateur et aux communicateurs d accéder aux deux mémoires externes, il y a donc arbitrage que nous modélisons par deux sommets Bus/Mux/Demux/Arbitre ( et ) entre les RAM externes, l opérateur et les communicateurs. Les Bus/Mux/Demux à modélise la capacité, pour chaque communicateur, d accéder soit à une SAM, soit à la mémoire externe. DSP TMS320C40 b10 C1 b1 S1 operateur b7 b8 R0 R1 b9 C2 C3 b2 b3 S2 S3 C4 b4 S4 C5 b5 S5 C6 b6 S6 b11 R loc R0,R1 : mémoires RAM internes partagées R loc,r glob: mémoires RAM externes partagées C0 à C6 : communicateurs S1 à S6 : mémoires SAM b1 à b8, b10 : bus/mux/demux b9, b11, b12 : bus/mux/demux /arbitre b12 R glob Ordonnancement DEA informatique Lille p. 35/104
36 Architecture quadri TMS320C EXEMPLES DE MODÉLISATIONS DE MACHINES 45 TMS320C40-1 TMS320C40-2 C1 S1 C1 operateur R0 R1 C2 C3 C4 S2 S3 S4 S2 S3 S4 C2 C3 C4 R0 R1 operateur C5 S5 S5 C5 C6 C6 R loc R loc S6 R glob S6 R loc R loc C6 C6 C5 S5 S5 C5 operateur R1 R0 C4 C3 C2 S4 S3 S2 S4 S3 S2 C4 C3 C2 R1 R0 operateur C1 C1 S1 TMS320C40-4 TMS320C40-3 FIG. 1.39: Modélisation d une architecture composée de 4 TMS320C40 Ordonnancement DEA informatique Lille p. 36/104
37 Caractérisation étiquetage des sommets par indications de capacités sommet caractéristiques opérateur liste opérations et durées bande passante d accès aux mémoires communicateur liste d opérations bande passante d accès aux mémoires mémoire capacité et bande passante max RAM partagée politique d arbitrage mesures ou estimations Ordonnancement DEA informatique Lille p. 37/104
38 Modélisation de l algorithme graphe de flot de données sommets = opérations atomiques arcs = dépendances de données répétition infinie implicite (flot) sommets retards pour dépendances inter-répétitions graphe acyclique sauf présence de retards Ordonnancement DEA informatique Lille p. 38/104
39 Factorisation regroupement d opérations répétitives moins puissant qu Array-OL pour le SPMD exprime aussi des dépendances inter-répétitions utilise des sommets particuliers D (Diffusion) : diffusion à toutes les répétitions F (Fork) : découpage J (Join) : regroupement I (Iterate) : dépendance inter-répétition nécessite une valeur initiale exemple : produit matrice-vecteur Ordonnancement DEA informatique Lille p. 39/104
40 Autres caractéristiques flot infini = factorisation implicite E = capteurs correspond à F S = actionneur correspond à J $ = retard correspond à I sommets constantes paramètres calculés une seule fois conditionnelles arcs de conditionnement destination exécutée seulement si entrée vraie et autres données présentes sommet merge pour fusionner résultats d opérations exclusives Ordonnancement DEA informatique Lille p. 40/104
41 Caractérisation pour chaque opération durée d exécution sur chaque opérateur qui peut l exécuter taille mémoire programme nécessaire taille mémoire données nécessaire pour chaque dépendance type de données taille Ordonnancement DEA informatique Lille p. 41/104
42 Modèle d implantation représente une implantation particulière d une application sur une architecture résultat de l heuristique de placement construit par raffinements successifs étiquetage du graphe d algorithme Ordonnancement DEA informatique Lille p. 42/104
43 Étape préliminaire : routage construction des chemins de communication entre les opérateurs suite de sommets bus, RAM, SAM et communicateurs deux types iso-opérateur une par RAM connectée à l opérateur inter-opérateurs conservation des plus courtes uniquement s il y en a plusieurs, communications parallèles possibles Ordonnancement DEA informatique Lille p. 43/104
44 Allocation spatiale : distribution partitionnement allocation des opérations aux opérateurs allocation des dépendances aux routes communication ajout de sommets dans graphe d algorithme avec association avec éléments du graphe d architecture communication communicateurs (read/write, send/receive, sync) allocation mémoires (données, programmes, communications) identité bus/mux/demux cas des conditionnelles Ordonnancement DEA informatique Lille p. 44/104
45 Exemple d algorithme distribué Graphe d architecture: Graphe d algorithme partitionné (avant communication) : Opr1 Opr2 Opr3 OPR2 C11 R1 a1 C12 S1 C21 R2 a2 C22 C23 S2 C31 R3 a3 C32 A d1 d2 B d3 C OPR1 d6 D d5 d4 OPR3 E Graphe d algorithme après distribution : i /a1 /c12 a /S1 a /R1 ad i /a1 ap B B a ap A /R1 /R1 /R1 /R1 a /R1 B /Opr1 ad A A /R1 /Opr1 a /R1 C /Opr1 a i ap /R1 /a1 C ad C /R1 /R1 S3 s r i /c21 /a2 a /R2 ap D a /s1 i s r /c12 /c21 s /c11 ad D /R2 /R2 D /opr2 a /s3 a /R2 i /a2 a /R2 s /c23 /a2 s /c23 a /s2 r r /c31 /c32 a /s2 r /c31 i i /a3 a /R3 i a : sommets allocation données ap A à ap E : sommets allocation programme ad A à ad E : sommets allocation données (variables internes) i : sommets identité s,r : sommets SENDs et RECEIVEs /a3 a /R3 a /R3 /a3 E /opr3 ap E /R3 ad E /R3 Ordonnancement DEA informatique Lille p. 45/104
46 Ordonnancement proposer un ordre total des opérations sur opérateurs communicateurs réalisation : ajout d arcs de précédence supplémentaires entre opérations affectées au même opérateur contraintes ordre des opérations dans une SAM ajout éventuel de sommets de synchronisation Ordonnancement DEA informatique Lille p. 46/104
47 Exemple d algorithme ordonnancé Graphe d architecture: Graphe d algorithme avant distribution : Opr1 Opr2 Opr3 OPR2 C11 Graphe d algorithme après distribution : ad A /R1 /Opr1 a /R1 /R1 /a1 /c12 /Opr1 a /S1 ad ap B i B a ap /R1 A /R1 /R1 /R1 a /R1 A R1 a1 C12 a S1 i C21 C B ap C ad C /R1 /R1 R2 s a2 C22 S3 C23 /a1 a i /R1 /a1 r S2 i /c21 /a2 C31 R3 a3 a /R2 a /s1 i s r /c12 /c21 s /c11 C32 ap D ad D /R2 /R2 D /opr2 a /s3 A d2 B d3 a /R2 i /a2 a /R2 s OPR1 /c23 C /a2 s /c23 a /s2 r r d1 /c31 /c32 a /s2 r /c31 d6 D a : sommets allocation données ap A à ap E : sommets allocation programme ad A à ad E : sommets allocation données (variables internes) i : sommets identité s,r : sommets SENDs et RECEIVEs : dépendances de données : précédences i /a3 i /a3 a /R3 i d5 a /R3 a /R3 /a3 d4 ap E /R3 ad E /R3 /opr3 E E OPR3 Ordonnancement DEA informatique Lille p. 47/104
48 Optimisation construction d un graphe d implantation à partir d un graphe d algorithme et d un graphe d architecture avec un objectif objectif respect de contraintes de temps latence = cadence minimisation latence heuristique Ordonnancement DEA informatique Lille p. 48/104
49 Heuristique de liste routage initialisation liste avec opérations sans prédécesseurs tant que liste non vide sélectionner opération dans la liste choix meilleur opérateur pour chaque opération restriction liste candidats pour éviter inactivité opérateurs choix candidat en fonction de son urgence mettre à jour liste suppression candidat choisi ajout de ses successeurs ordonnançables Ordonnancement DEA informatique Lille p. 49/104
50 Détails heuristique choix meilleur opérateur pour une opération ordonnancement sur tous les opérateurs possibles construction des communications associées calcul des fonctions de coût si égalité, choix en fonction de la mémoire libre restante restriction liste candidats suppression candidats dont date de début au plus tôt date de fin au plus tôt de celui qui a la plus petite date de début au plus tôt fonction de coût, urgence allongement chemin critique sinon opposé flexibilité d ordonnancement différence entre ordonnancement au plus tard et ordonnancement au plus tôt Ordonnancement DEA informatique Lille p. 50/104
51 Cas particuliers sommets constantes considérés ordonnancés par l heuristique à la fin, allocation sur chaque opérateur consommant leurs données duplication éventuelle ordonnancement avant toutes les autres opérations sommets retards dépendances inter-itérations implantés par une copie de données ordonnançables après prédécesseurs et successeurs Ordonnancement DEA informatique Lille p. 51/104
52 Bilan heuristique d ordonnancement/placement architecture hétérogène graphe de flot de données prend en compte communications et allocation mémoire suite de la chaîne de traitement de SynDEx compaction de la mémoire génération de code exécutable extensions possibles modèles applications et architectures SPMD (à la Array-OL) modèles matériels de FPGA ou d ASIC autres objectifs (consommation, surface, tolérance aux pannes) heuristique plus sophistiquée Ordonnancement DEA informatique Lille p. 52/104
53 Ordonnancement de nids de boucles Ordonnancement DEA informatique Lille p. 53/104
54 Nids de boucles DO i=1,n DO j=i,n+1 DO k=j-i,n S 1 S 2 ENDDO ENDDO DO r=1,n boucles non parfaitement imbriquées vecteur d itération valeur des indices englobants domaine d itération domaine des indices englobants opérations instances des instructions S 3 ENDDO ENDDO Ordonnancement DEA informatique Lille p. 54/104
55 Ordre séquentiel (1/2) ordre d exécution des opérations opérations d une même instruction S(I) < seq S(J) I < lex J < lex = ordre lexicographique ou {I 1 < J 1 } ou {I 1 = J 1 et I 2 < J 2 } ou... ou {I 1 = J 1 et... et I n 1 = J n 1 et I n < J n } entre instructions du même bloc ordre textuel < text Ordonnancement DEA informatique Lille p. 55/104
56 Ordre séquentiel (2/2) cas général : opérations S(I) et T (J) notations : S (resp. T ) englobé par n S (resp. n T ) boucles n S,T boucles englobantes communes Ĩ (resp. J) = I (resp. J) tronqué aux ns,t premières composantes 3 cas : si Ĩ < lex J alors S(I) < seq T (J) si J <lex Ĩ alors T (J) < seq S(I) si Ĩ = J alors S(I) < seq T (J) S < text J Ordonnancement DEA informatique Lille p. 56/104
57 Modèle de boucles instructions décrites par leur vecteur d itération leur position dans le texte domaines d itération = polyèdres un point entier dans ce polyèdre = un vecteur d itération possible boucles correspondant au modèle : bornes = fonctions affines des indices des boucles englobantes pas = 1 Ordonnancement DEA informatique Lille p. 57/104
58 Dépendances de données conditions de Bernstein il y a dépendance de données entre S(I) et T (J) ssi accès à la même variable et un accès en écriture dépendance orientée selon ordre séquentiel notation : S(I) T (J) trois types de dépendances de données, toujours entre deux accès consécutifs dans l ordre séquentiel dépendance de flot : écriture pour S(I), lecture pour T (J) anti-dépendance : lecture pour S(I), écriture pour T (J) dépendance de sortie : écriture pour S(I), écriture pour T (J) Ordonnancement DEA informatique Lille p. 58/104
59 Exemple DO i=1,n DO j=1,n a(i+j)=a(i+j-1)+1 ENDDO ENDDO espace d itération? dépendances de données dépendances de flot? anti-dépendances? dépendances de sortie? Ordonnancement DEA informatique Lille p. 59/104
60 Analyse de dépendances de nombreuses méthodes proposées en une vingtaine d années différentes abstractions distances de dépendance niveaux de dépendance vecteurs de direction polyèdres/cônes de dépendance graphes de flot de données formules de Presburger à chaque abstraction son ou ses analyses (tests) Ordonnancement DEA informatique Lille p. 60/104
61 Graphe de dépendance étendu (GDE) le graphe de dépendance général (voir cours précédent) sommets = toutes les opérations ne peut pas être généré à la compilation taille proportionnelle au nombre d opérations dépend des valeurs des paramètres de taille du problème pas forcément adapté au calcul de l ordonnancement dans certains cas représentable de façon compacte programmes à contrôle statique taille proportionnelle au nombre d instructions Ordonnancement DEA informatique Lille p. 61/104
62 Vecteur/ensemble de distance distance de dépendance correspondant à une dépendance S(I) p T (J) due à une paire p de références = J Ĩ( Nn S,T ) toujours lexicographiquement positive ensemble de distances (de dépendance) E p S,T = {( J Ĩ) (I, J) Nn S Nn T, S(I) p T (J)} Ordonnancement DEA informatique Lille p. 62/104
63 Graphe de dépendance réduit (GDR) représentation compacte mais approximative du GDE exacte dans le cas des programmes à contrôle statique sommets = instructions arête entre S et T si (I, J) N n S N n T S(I) T (J) une arête par paire p de références étiquetée par une sur-approximation D e des ensembles de distances si S(I) T (J) dans le GDE alors e = (S, T ) dans le RDG telle que J Ĩ D e graphe de dépendance apparent (GDA) dépendances apparaissant si on déroule le GDR GDA = GDE si analyse exacte Ordonnancement DEA informatique Lille p. 63/104
64 Approximations des ensembles de distance niveaux de dépendance utilisés dans l algorithme de détection du parallélisme d Allen et Kennedy vecteurs de direction utilisés dans l algorithme de Wolf et Lam polyèdres de dépendance utilisés dans l algorithme de partition en super-nœuds d Irigoin et Triolet Ordonnancement DEA informatique Lille p. 64/104
65 Niveaux de dépendance dépendance S(I) T (J) indépendante des boucles si Ĩ = J niveau dépendance portée par une boucle si Ĩ J niveau = rang de la première coordonnée non nulle de J Ĩ Ordonnancement DEA informatique Lille p. 65/104
66 Vecteurs de direction vecteur de dépendance uniforme quand la taille de l ensemble de distances associé est de taille indépendante de la taille de l espace d itération sinon, vecteur de direction vecteur de dimension n S,T à valeurs dans Z {, +, } (Z {+, }) chaque coordonnée = approximation de toutes les valeurs de la coordonnée correspondante des vecteurs de distance z+ si toujours z (+ = 1+) z si toujours z ( = 1 ) si valeurs dans Z Ordonnancement DEA informatique Lille p. 66/104
67 Exemple de GDR DO i=2,n S 1 : s(i)=0 DO j=1,i-1 S 2 : s(i)=s(i)+a(i,j)*b(j) ENDDO : b(i)=b(i)-s(i) S 3 ENDDO GDR par niveaux GDR par vecteurs de direction Ordonnancement DEA informatique Lille p. 67/104
68 Limites des approximations réduisent le nombre d ordonnancements possibles analyse exacte des dépendances pas toujours possible ou trop coûteuse développement d un algorithme de détection du parallélisme capacité limitée par cette approximation en général on ignore la forme de l espace d itération optimalité par rapport à l approximation algorithme de Feautrier programmes à contrôle statique travaille sur l analyse exacte des dépendances tient compte de la forme de l espace d itération limité par les transformations de boucles recherchées le plus puissant à l heure actuelle Ordonnancement DEA informatique Lille p. 68/104
69 Algorithme d Allen et Kennedy utilise les niveaux de dépendance but : pour chaque instruction détecter le nombre maximal de boucles englobantes parallèles transformations de code utilisées : distribution de boucles son inverse, la fusion de boucles optimal par rapport à l approximation choisie Ordonnancement DEA informatique Lille p. 69/104
70 Distribution de boucles toutes les instances de S peuvent être exécutées avant toutes les instances de T s il n y a pas de dépendance de T vers S cas simple : une boucle autour de S 1 et S 2 S 1 S 2, distribution de S 1 avant S 2 S 2 S 1, distribution de S 2 avant S 1 pas de dépendance, tous codes valides S 1 S 2 et S 2 S 1, pas de distribution valide inversion des instructions possible si toutes dépendances portées cas général : calculer les composantes fortement connexes du RDG les trier topologiquement distribuer les boucles autour Ordonnancement DEA informatique Lille p. 70/104
71 Allen-Kennedy(G,k) appeler Allen-Kennedy(GDR par niveaux, 1) enlever de G toutes les arêtes de niveau < k calculer les composantes fortement connexes de G pour chaque composante C, dans l ordre topologique faire si C est une seule instruction, S, sans arête alors générer boucles // autour de S sinon soit l = min e C l(e) (l(e) =niveau de e) générer boucles // du niveau k à l 1 générer boucle séquentielle au niveau l appeler Allen-Kennedy(C,l + 1) Ordonnancement DEA informatique Lille p. 71/104
72 Exemple Allen-Kennedy DO i=...,... DO j=...,... DO k=...,... S 1 S 2 ENDDO S 3 S 4 ENDDO ENDDO S 1 S S 4 S Ordonnancement DEA informatique Lille p. 72/104
73 Transformations unimodulaires principalement pour les boucles parfaitement imbriquées changement de l ordre d itération considérer corps de boucle indivisible caractérisé par une matrice unimodulaire matrice entière à inverse entière parcours dans l ordre lexicographique de I = T.I formalisme englobe de nombreuses transformations permutation renversement torsion Ordonnancement DEA informatique Lille p. 73/104
74 Génération de code code de départ DO I D S(I) ENDDO après transformation par T DO I T (D) S(T 1.I ) ENDDO algorithmes de génération du code d itération basés sur de la programmation linéaire en nombres entiers ou l élimination de Fourier-Motzkin Ordonnancement DEA informatique Lille p. 74/104
75 Validité conserver l ordre des dépendances dépendances indépendantes des boucles inchangées dépendances portées par les boucles S i (I) S j (J) implique T.I < lex T.J soit T.(J I) > lex 0 Ordonnancement DEA informatique Lille p. 75/104
76 Méthode de l hyperplan idée : choisir T telle que pour chaque vecteur d de dépendance T.d > lex 0 et même première composante de T.d > 0 une boucle séquentielle englobant des boucles parallèles si s est la 1 re ligne de T, s.d 1 s est la normale à un hyperplan d équation s.x = 0 ordonnancement selon s.i = t théorème : un tel vecteur s existe toujours preuve constructive il faut encore construire la matrice unimodulaire utilisation de la forme normale de Hermite Ordonnancement DEA informatique Lille p. 76/104
77 Exemple hyperplan DO i=1,n DO j=1,n a(i+j)=a(i+j-1)+1 ENDDO ENDDO vecteurs de dépendance : {(1, 1); (1, 2); (1, 0); (0, 1)} vecteur d hyperplan : s = (3, 1) matrice unimodulaire : T = ( ) DO j=4,4*n DO// i=max(1,ceil((j-n)/3)),min(n,floor((j-1)/3)) a(j-2*i)=a(j-2*i-1)+1 ENDDO// ENDDO Ordonnancement DEA informatique Lille p. 77/104
78 État de l art de nombreuses méthodes différentes modélisations optimalité de l algorithme relatif à la modélisation seulement une étape analyse de dépendances : plusieurs modèles découvrir le parallélisme : ordonnancement bien compris placement : pas mûr adaptation de la granularité : nombreux travaux applicabilité restreinte Ordonnancement DEA informatique Lille p. 78/104
79 Cas du traitement de signal systématique Ordonnancement DEA informatique Lille p. 79/104
80 Contexte langage Array-OL deux niveaux de description global : graphe de tâches local : itérations data-parallèles placement et ordonnancement sur SoC architecture hétérogène références thèse de Julien Soula Principe de Compilation d un Langage de Traitement de Signal rapport LIFL02-11 de Philippe Dumont Étude des transformations d un code Array-OL dans Gaspard Ordonnancement DEA informatique Lille p. 80/104
Annexe 6. Notions d ordonnancement.
Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. Sophie.Demassey@mines-nantes.fr Résumé Ce document
Plus en détailCommunications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes
Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction
Plus en détailChapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
Plus en détailProgrammation linéaire
1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détailExemples de problèmes et d applications. INF6953 Exemples de problèmes 1
Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation
Plus en détailADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES
ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES AILTON F. DIAS, MOHAMED AKIL, CHRISTOPHE LAVARENNE, YVES SOREL CNEN/CDTN Divisão de Computação e Informação, CP 941-012-970 Belo
Plus en détailSanity Check. bgcolor mgcolor fgcolor
Sanity Check bgcolor mgcolor fgcolor 0 1 2 3 4 5 6 7 8 9 10 Compilation pour cibles hétérogènes: automatisation des analyses, transformations et décisions nécessaires, François Irigoin et Ronan Keryell
Plus en détailRésolution de systèmes linéaires par des méthodes directes
Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailLa programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique
La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation
Plus en détailMABioVis. Bio-informatique et la
MABioVis Modèles et Algorithmes pour la Bio-informatique et la Visualisation Visite ENS Cachan 5 janvier 2011 MABioVis G GUY MELANÇON (PR UFR Maths Info / EPI GRAVITE) (là, maintenant) - MABioVis DAVID
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailLes diagrammes de modélisation
L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse
Plus en détailSouad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/
Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation
Plus en détailProblèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris 12 20 Mars 2003
Problèmes d ordonnancement dans les systèmes de production Michel Gourgand Université Blaise Pascal Clermont Ferrand LIMOS CNRS UMR 6158 1 Le LIMOS Laboratoire d Informatique, de Modélisation et d Optimisation
Plus en détailRappels sur les suites - Algorithme
DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................
Plus en détailJean-Philippe Préaux http://www.i2m.univ-amu.fr/~preaux
Colonies de fourmis Comment procèdent les colonies de fourmi pour déterminer un chemin presque géodésique de la fourmilière à un stock de nourriture? Les premières fourmis se déplacent au hasard. Les fourmis
Plus en détailOrdonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1
CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste
Plus en détailINF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1
INF6500 : Structures des ordinateurs Sylvain Martel - INF6500 1 Cours 4 : Multiprocesseurs Sylvain Martel - INF6500 2 Multiprocesseurs Type SISD SIMD MIMD Communication Shared memory Message-passing Groupe
Plus en détailProgrammation temps-réel Cours 1 et 2 Introduction et ordonnancement
Master 2 pro Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement Isabelle PUAUT / Rémi COZOT Université de Rennes I 1 Applications temps-réel embarquées Systèmes en interaction avec l
Plus en détail3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes
PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason
Plus en détailOrganigramme / Algorigramme Dossier élève 1 SI
Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué
Plus en détailInitiation au HPC - Généralités
Initiation au HPC - Généralités Éric Ramat et Julien Dehos Université du Littoral Côte d Opale M2 Informatique 2 septembre 2015 Éric Ramat et Julien Dehos Initiation au HPC - Généralités 1/49 Plan du cours
Plus en détailPerformances et optimisations
Performances et optimisations Outils pour le calcul scientifique à haute performance École doctorale sciences pour l ingénieur juin 2001 Philippe MARQUET phm@lifl.fr Laboratoire d informatique fondamentale
Plus en détailProgrammation linéaire
Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire
Plus en détailCalculer avec Sage. Revision : 417 du 1 er juillet 2010
Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailMémoire de Fin d Etudes
Mémoire de Fin d Etudes Pour l Obtention du Diplôme d Ingénieur d Etat en Informatique Présenté par : MOSTEFA MERIEM Option : Système distribué Session Juin 2009 THEME PLACEMENT DES TACHES REPETITIVES
Plus en détailLa NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
Plus en détailComplexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation
Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul
Plus en détailCours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.
Cours de Recherche Opérationnelle IUT d Orsay Nicolas M. THIÉRY E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.name/ CHAPTER 1 Introduction à l optimisation 1.1. TD: Ordonnancement
Plus en détailParallélisme et Répartition
Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre
Plus en détailLa Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1
La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois
Plus en détailLa classification automatique de données quantitatives
La classification automatique de données quantitatives 1 Introduction Parmi les méthodes de statistique exploratoire multidimensionnelle, dont l objectif est d extraire d une masse de données des informations
Plus en détailET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
Plus en détailInfo0804. Cours 6. Optimisation combinatoire : Applications et compléments
Recherche Opérationnelle Optimisation combinatoire : Applications et compléments Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 17 février 2014 Plan de
Plus en détailMétriques de performance pour les algorithmes et programmes parallèles
Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and
Plus en détailArchitecture des Systèmes d Information Architecture des Systèmes d Information
Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau
Plus en détailGestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr
Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr 1- Structure d un disque 2- Ordonnancement des requêtes 3- Gestion du disque - formatage - bloc d amorçage - récupération
Plus en détailALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII
ALGORITHMIQUE II NOTION DE COMPLEXITE 1 2 Comment choisir entre différents algorithmes pour résoudre un même problème? Plusieurs critères de choix : Exactitude Simplicité Efficacité (but de ce chapitre)
Plus en détailCours de Master Recherche
Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction
Plus en détailProgrammation Linéaire - Cours 1
Programmation Linéaire - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.
Plus en détailConception de réseaux de télécommunications : optimisation et expérimentations
Conception de réseaux de télécommunications : optimisation et expérimentations Jean-François Lalande Directeurs de thèse: Jean-Claude Bermond - Michel Syska Université de Nice-Sophia Antipolis Mascotte,
Plus en détailQuelques Algorithmes simples
Quelques Algorithmes simples Irène Guessarian ig@liafa.jussieu.fr 10 janvier 2012 Je remercie Patrick Cegielski de son aide efficace pour la programmation Java ; la section sur le codage de Huffman a été
Plus en détailThéorie et codage de l information
Théorie et codage de l information Les codes linéaires - Chapitre 6 - Principe Définition d un code linéaire Soient p un nombre premier et s est un entier positif. Il existe un unique corps de taille q
Plus en détail1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :
GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours
Plus en détailOptimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante
Plus en détailLes algorithmes de base du graphisme
Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............
Plus en détailPolynômes à plusieurs variables. Résultant
Polynômes à plusieurs variables. Résultant Christophe Ritzenthaler 1 Relations coefficients-racines. Polynômes symétriques Issu de [MS] et de [Goz]. Soit A un anneau intègre. Définition 1.1. Soit a A \
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en détailÉtude des Corrélations entre Paramètres Statiques et Dynamiques des Convertisseurs Analogique-Numérique en vue d optimiser leur Flot de Test
11 juillet 2003 Étude des Corrélations entre Paramètres Statiques et Dynamiques des Convertisseurs Analogique-Numérique en vue d optimiser leur Flot de Test Mariane Comte Plan 2 Introduction et objectif
Plus en détailRésolution d équations non linéaires
Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique
Plus en détail1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert
1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes
Plus en détailContrainte de flot pour RCPSP avec temps de transfert
Contrainte de flot et x-rcpsc T 1 Contrainte de flot pour RCPSP avec temps de transfert PS temp, s ij Cmax BENOIST Thierry BOUYGUES/e-Lab DIAMANTINI Maurice ENSTA/LMA Contrainte de flot et x-rcpsc T Présentation
Plus en détailSujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.
Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de
Plus en détailBig Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université
Plus en détailTHÈSE. En vue de l obtention du DOCTORAT DE L UNIVERSITÉ DE TOULOUSE. Touria CHAFQANE BEN RAHHOU
THÈSE En vue de l obtention du DOCTORAT DE L UNIVERSITÉ DE TOULOUSE Délivré par : l Université Toulouse 3 Paul Sabatier (UT3 Paul Sabatier) Présentée et soutenue le 24/06/2013 par : Touria CHAFQANE BEN
Plus en détailJulien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration
Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...
Plus en détailCours d analyse numérique SMI-S4
ours d analyse numérique SMI-S4 Introduction L objet de l analyse numérique est de concevoir et d étudier des méthodes de résolution de certains problèmes mathématiques, en général issus de problèmes réels,
Plus en détailInformatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction
Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailModel checking temporisé
Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr ETR 07, 5 septembre 2007 1/44 Nécessité de vérifier des systèmes... 2/44 Nécessité de vérifier
Plus en détailBig Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de
Plus en détailCours de Génie Logiciel
Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes
Plus en détail03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing
3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps
Plus en détailOptimisation Combinatoire et Colonies de Fourmis Nicolas Monmarche April 21, 1999 Sommaire Inspiration biologiques Ant Colony Optimization Applications TSP QAP Flow Shop Problemes dynamiques 1 Historique
Plus en détailIntérêt du découpage en sous-bandes pour l analyse spectrale
Intérêt du découpage en sous-bandes pour l analyse spectrale David BONACCI Institut National Polytechnique de Toulouse (INP) École Nationale Supérieure d Électrotechnique, d Électronique, d Informatique,
Plus en détailMEAD : temps réel et tolérance aux pannes pour CORBA
MEAD : un intergiciel temps-réel et tolérant aux pannes pour CORBA Master 2 Informatique Recherche Université de Marne-la-Vallée Vendredi 3 mars 2006 Plan 1 Introduction 2 Solutions existantes 3 Concilier
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailModélisation et Simulation
Cours de modélisation et simulation p. 1/64 Modélisation et Simulation G. Bontempi Département d Informatique Boulevard de Triomphe - CP 212 http://www.ulb.ac.be/di Cours de modélisation et simulation
Plus en détailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailFonctions de plusieurs variables
Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme
Plus en détailEfficacité énergétique des réseaux de cœur et d accès
Efficacité énergétique des réseaux de cœur et d accès David Coudert Joanna Mouliérac, Frédéric Giroire MASCOTTE I3S (CNRS/Université Nice Sophia-Antipolis) INRIA Sophia-Antipolis Méditerranée 1 Contexte
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailOrdonnancement robuste et décision dans l'incertain
Ordonnancement robuste et décision dans l'incertain 4 ème Conférence Annuelle d Ingénierie Système «Efficacité des entreprises et satisfaction des clients» Centre de Congrès Pierre Baudis,TOULOUSE, 2-4
Plus en détailPROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN
PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN 1. DÉVELOPPEMENT D'APPLICATION (CONCEPTEUR ANALYSTE) 1.1 ARCHITECTURE MATÉRIELLE DU SYSTÈME INFORMATIQUE 1.1.1 Architecture d'un ordinateur Processeur,
Plus en détailLe Guide Pratique des Processus Métiers
Guides Pratiques Objecteering Le Guide Pratique des Processus Métiers Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam 21 avenue Victor Hugo 75016
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détailUniversité du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.
Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local
Plus en détailHigh Performance by Exploiting Information Locality through Reverse Computing. Mouad Bahi
Thèse High Performance by Exploiting Information Locality through Reverse Computing Présentée et soutenue publiquement le 21 décembre 2011 par Mouad Bahi pour l obtention du Doctorat de l université Paris-Sud
Plus en détailProgrammes des classes préparatoires aux Grandes Ecoles
Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voies : Mathématiques, physique et sciences de l'ingénieur (MPSI) Physique, chimie et sciences de l ingénieur (PCSI) Physique,
Plus en détailwww.h-k.fr/publications/objectif-agregation
«Sur C, tout est connexe!» www.h-k.fr/publications/objectif-agregation L idée de cette note est de montrer que, contrairement à ce qui se passe sur R, «sur C, tout est connexe». Cet abus de langage se
Plus en détailContexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,
Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très
Plus en détailWHITEPAPER. Quatre indices pour identifier une intégration ERP inefficace
Quatre indices pour identifier une intégration ERP inefficace 1 Table of Contents 3 Manque de centralisation 4 Manque de données en temps réel 6 Implémentations fastidieuses et manquant de souplesse 7
Plus en détailINF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies
INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH
Plus en détailPlus courts chemins, programmation dynamique
1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique
Plus en détailChapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping
Chapitre V : La gestion de la mémoire Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Introduction Plusieurs dizaines de processus doivent se partager
Plus en détailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailMODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»
MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» Du cours Modélisation Semi -Formelle de Système d Information Du Professeur Jean-Pierre GIRAUDIN Décembre. 2002 1 Table de matière Partie 1...2 1.1
Plus en détailObjectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Plus en détailOptimisation Discrète
Prof F Eisenbrand EPFL - DISOPT Optimisation Discrète Adrian Bock Semestre de printemps 2011 Série 7 7 avril 2011 Exercice 1 i Considérer le programme linéaire max{c T x : Ax b} avec c R n, A R m n et
Plus en détailCalcul différentiel. Chapitre 1. 1.1 Différentiabilité
Chapitre 1 Calcul différentiel L idée du calcul différentiel est d approcher au voisinage d un point une fonction f par une fonction plus simple (ou d approcher localement le graphe de f par un espace
Plus en détailFrancis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle
Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) PLANIFICATION DE TÂCHES DANS MS PROJECT IFT702 Planification en intelligence artificielle Présenté à M. Froduald KABANZA
Plus en détail4.2 Unités d enseignement du M1
88 CHAPITRE 4. DESCRIPTION DES UNITÉS D ENSEIGNEMENT 4.2 Unités d enseignement du M1 Tous les cours sont de 6 ECTS. Modélisation, optimisation et complexité des algorithmes (code RCP106) Objectif : Présenter
Plus en détailFIMA, 7 juillet 2005
F. Corset 1 S. 2 1 LabSAD Université Pierre Mendes France 2 Département de Mathématiques Université de Franche-Comté FIMA, 7 juillet 2005 Plan de l exposé plus court chemin Origine du problème Modélisation
Plus en détailWEA Un Gérant d'objets Persistants pour des environnements distribués
Thèse de Doctorat de l'université P & M Curie WEA Un Gérant d'objets Persistants pour des environnements distribués Didier Donsez Université Pierre et Marie Curie Paris VI Laboratoire de Méthodologie et
Plus en détailProblème 1 : applications du plan affine
Problème 1 : applications du plan affine Notations On désigne par GL 2 (R) l ensemble des matrices 2 2 inversibles à coefficients réels. Soit un plan affine P muni d un repère (O, I, J). Les coordonnées
Plus en détailintroduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives
introduction Chapitre 5 Images récursives http ://univ-tln.fr/~papini/sources/flocon.htm Récursivité http://www.poulain.org/fractales/index.html Image qui se contient elle-même 1 Exemples mathématiques
Plus en détail