Académique Documents
Professionnel Documents
Culture Documents
multiprocesseur et réparti
Frank Singhoff
Bureau C-203
Université de Brest, France
Lab-STICC, CNRS UMR 6285
singhoff@univ-brest.fr
• Propriétés/hypothèses :
• Fonctionnement :
n
X Ci 1
U= ≤ n(2 n − 1) ≤ 0.69
i=1
Pi
X X ri
r i = Ci + I j = Ci + Cj ≤ D i
Pj
j∈hp(i) j∈hp(i)
w10 = 3 =⇒ r1 = 3
w20 = 2
2
w21 =2+ 7 3=5
5
w22 =2+ 7 3 = 5 =⇒ r2 = 5
w30 = 5
5 5
w31
=5+ 7 3+ 2 = 10
12
10 10
w32 = 5 + 7 3 + 12 2 = 13
13 13
w33 = 5 + 7 3 + 12 2 = 15
15 15
w34 = 5 + 7 3 + 12 2 = 18
18 18
w35 = 5 + 7 3 + 12 2 = 18 =⇒ r3 = 18
=⇒ architectures multi-coeurs.
• Affectations de priorité :
[0, P P CM (∀i : Pi )]
Ci
∀i : W T (Ti , t) = t · sur [0, t)
Pi
2. Peut être approché par :
X
t−1
retard(Ti , t) = W T (Ti , t) − Sched(Ti , k)
k=0
∀i, Ti , t : −1 ≤ retard(Ti , t) ≤ 1
l m l m
1 1−1
d(T1 ,1) = 1/2 =2 r(T1 ,1) = 1/2 =0
l m l m
1 1−1
d(T2 ,1) = 1/3 =3 r(T2 ,1) = 1/3 =0
l m l m
1 1−1
d(T3 ,1) = 2/9 = ⌈4, 5⌉ = 5 r(T3 ,1) = 2/9 =0
l m l m
2 2−1
d(T3 ,2) = 2/9 =9 r(T3 ,2) = 2/9 = ⌈4, 5⌉ = 5
Client a Client b
Tb1
Ta2 (2)
Ta1
(4) Tb2
(1) (3)
Serveur
Tâche Tâche
productrice consommatrice
d1 Couches Couches d6
supérieures supérieures
d2
Couche Couche d5
MAC MAC
d3 Médium
d4
id 12 : 00001100
00001100
id 49 : 00110001
Site B Site C
id : 09 id : 49
id : 32 id : 07
Identificateurs de trame
X ri
r i = Ci + Cj + max(Ck , ∀k ∈ lp(i))
Pj
j∈hp(i)
(3) (3)
L’arbitre
(3)
demande (1) (2)
la variable 2
Site B
Site A
Produits Le site A
Produits
(31) émet la variable 2
(2, 24)
Consom.
Consom.
(2, 24)
Arbitre (12, 31, 9)
Liste d’ID
(2, 24, 31)
0000
1111
9 11111111111111111111111111111111
00000000000000000000000000000000
0000
1111
00000000000000000000000000000000
11111111111111111111111111111111
0000
1111
00000000000000000000000000000000
11111111111111111111111111111111
3 12
0000
1111 3 111 3
00000000000000000000000000000000
11111111111111111111111111111111
0000
1111
0000
1111 000
8 11111111111111111111111111111111
00000000000000000000000000000000
0000
1111 000
111
00000000000000000000000000000000
11111111111111111111111111111111
0000
1111
8
0000 2 000
111
00000000000000000000000000000000
11111111111111111111111111111111
21111 2 111
13 2
000 2 2
00000000000000000000000000000000
11111111111111111111111111111111
0000
1111 000
111
5 11111111111111111111111111111111
00000000000000000000000000000000
00000000000000000000000000000000
11111111111111111111111111111111
5 5 5 5 5 5 5 5 5 5 5 5
11111111111111111111111111111111
00000000000000000000000000000000
00000000000000000000000000000000
11111111111111111111111111111111
0
4 microcycles 8 mucrocyles Microcycles
Message 5 : P5=10 uts, C5=5 uts; (ou 10 uts)
Message 2 : P2=2.P5, C2=3 uts;
Message 3 : P3=4.P5, C3=1 ut;
Macrocycles
• Table d’arbitrage :
Notion de microcycle (plus petite période) et de macrocycle (PPCM
des périodes).
L’arbitre est une tâche périodique, qui se réveille à chaque début de
microcycle pour la transmission des variables périodiques d’abord,
puis, s’il reste du temps, des variables apériodiques.
0 10 20
15 : Réveil théorique de i
Temps de réponse T1
Temps de réponse T2
• Exemple du producteur/consommateur :
Ti T2
mb Tk
10 ∀i : Ji := 0, ri := 0, ri′ := 0;
20 ∀i : Calculer_temps_de_réponse (ri );
30 Tant que (∃i : ri 6= ri′ ) {
40 ∀i : Ji := max(Ji , ∀j avec j ≺ i : rj );
50 ∀i : ri′ := ri ;
60 ∀i : Calculer_temps_de_réponse (ri );
70 }
Si i est un message :
ri = Ji + Mi
Processeur a Processeur b
T1 M1
T3
T5
T2 T4
M2
Bus de terrain
Message/Tâche M1 M2 T1 T2 T3 T4 T5
Ji 0 0 0 0 0 0 0
ri 6 1 4 9 5 2 12
Message/Tâche M1 M2 T1 T2 T3 T4 T5
Ji 4 2 0 1 6 0 0
ri 6+4 1+2 9+1 5+6
=10 =3 4 =10 =11 2 12
Message/Tâche M1 M2 T1 T2 T3 T4 T5
Ji 4 2 0 3 10 0 0
ri 6+4 1+2 9+3 5+10
=10 =3 4 =12 =15 2 12
Message/Tâche M1 M2 T1 T2 T3 T4 T5
Ji 4 2 0 3 10 0 0
• Problèmes soulevés :
Loi d’arrivée
File Serveur
W = Wq + Ws
L = Lq + Ls
• Loi de Little : relation entre délai/latence et
taille/dimensionnement.
L = λ.W
L
W =
λ
L Lq W Wq
λWs λ2 Ws2 Ws λWs2
M/M/1 1−ρ 1−ρ 1−ρ 1−ρ
λ2 (Ws2 +σ 2 ) λ (Ws2 +σ 2 )
2 λ(Ws2 +σ 2 ) λ(Ws2 +σ 2 )
M/G/1 λWs + 2(1−ρ) 2(1−ρ)
Ws + 2(1−ρ) 2(1−ρ)
λ2 Ws2 λ2 Ws2 λWs2 λWs2
M/D/1 λWs + 2(1−ρ) 2(1−ρ)
Ws + 2(1−ρ) 2(1−ρ)
• Test de faisabilité :
Harmonique Non harmonique
Lmax = 2.n Lmax = 2.n + 1
Wmax = 2.n.Pcons Wmax = (2.n + 1).Pcons
AAL1
AAL1
ATM ATM
Gigue
1. Délai de mémorisation :
[AND 05] James Anderson, Philip Holman, and Anand Srinivasan. « Fair Scheduling of
Real-time Tasks on Multiprocessors ». In Handbook of Scheduling, 2005.
[BAT 97] I. Bate and A. Burns. « Schedulability Analysis of Fixed priority Real-Time Systems
with Offsets », 1997.
[BLA 76] J. Blazewicz. « Scheduling Dependant Tasks with Different Arrival Times to Meet
Deadlines ». In. Gelende. H. Beilner (eds), Modeling and Performance Evaluation of
Computer Systems, Amsterdam, Noth-Holland, 1976.
[BUR 94] A. Burchard, J. Liebeherr, Y. Oh, and S. H. Son. « Assigning real-time tasks to
homogeneous multiprocessor systems ». January 1994.
[CHE 90] H. Chetto, M. Silly, and T. Bouchentouf. « Dynamic Scheduling of Real-time Tasks
Under Precedence Constraints ». Real Time Systems, The International Journal of
Time-Critical Computing Systems, 2(3):181–194, September 1990.
[COT 00] F. Cottet, J. Delacroix, C. Kaiser, and Z. Mammeri. Ordonnancement temps réel.
Hermès, 2000.
[DAV 09] R.I. Davis and A. Burns. « A Survey of Hard Real-Time Scheduling Algorithms and
Schedulability Analysis Techniques for Multiprocessor Systems ». In University of York
Technical Report, YCS-2009-443, 2009.
[DEC 96] T. Decker. « Three Popular Avionics Databuses ». Real Time Magazine, (2):29–34,
April 1996.
[DHA 78] S. Dhall and C. Liu. « On a real time scheduling problem ». Operations Research,
26:127–140, 1978.
[DWY 91] J. Dwyer and A. Ioannou. Les réseaux locaux industriels MAP et TOP. Editions
Masson, mars 1991.
[GEO 96] L. George, N. Rivierre, and M. Spuri. « Preemptive and Non-Preemptive Real-time
Uni-processor Scheduling ». INRIA Technical report number 2966, 1996.
[HEA 96] D. Head. « MIL-STD-1553B ». Real Time Magazine, (2):25–28, April 1996.
[KOO 95] P. J. Koopman. « Time Division Multiple Access Without a Bus Master ». Technical
Report RR-9500470, United Techologies Research Center, June 1995.
[LEG 03] J. Legrand, F. Singhoff, L. Nana, L. Marcé, F. Dupont, and H. Hafidi. « About
Bounds of Buffers Shared by Periodic Tasks : the IRMA project ». In the 15th Euromicro
International Conference of Real Time Systems (WIP Session), Porto, July 2003.
[LIU 73] C. L. Liu and J. W. Layland. « Scheduling Algorithms for Multiprogramming in a Hard
Real-Time Environnment ». Journal of the Association for Computing Machinery,
20(1):46–61, January 1973.
[OH 93] Y. Oh and S. H. Son. « Tight Performance Bounds of Heuristics for a Real-Time
Scheduling P roblem ». Technical Report, May 1993.
[OH 95] Y. Oh and S.H. Son. « Fixed-priority scheduling of periodic tasks on multiprocessor
systems ». 1995.
[PAL 03] C. Palencia and M. Gonzalez Harbour. « Offset-Based Response Time Analysis of
Distributed Systems Scheduled under EDF ». In 15th Euromicro Conference on
Real-Time Systems (ECRTS’03), 2003.
[RIC 01] P. Richard, F. Cottet, and M. Richard. « On line Scheduling of Real Time Distributed
Computers With Complex Communication Constraints ». 7th Int. Conf. on Engineering of
Complex Computer Systems, Skovde (Sweden), June 2001.
[STR 96] H. Strass. « Factory Floor Networks PROFIBUS : the natural choice ». Real Time
Magazine, (2):6–8, April 1996.
[TIN 92] K. Tindell. « Using Offset Information to Analyse Static Priority Pre-Emptively
Scheduled Task Sets ». In YCS. 182, Dept of Computer Science, University of York,
1992.
[TIN 94] K. W. Tindell and J. Clark. « Holistic schedulability analysis for distributed hard
real-time systems ». Microprocessing and Microprogramming, 40(2-3):117–134, April
1994.
[UPE 94] P. Upendar and P. J. Koopman. « Communication Protocols for Embedded Systems
». Embedded Systems Programming, 7(11):46–58, November 1994.
[XU 90] J. Xu and D. Parnas. « Scheduling Processes with Release Times, Deadlines,
Precedence, and Exclusion Relations ». IEEE Transactions on Software Engineering,
16(3):360–369, March 1990.
[ZEL 96] H. Zeltwanger. « CAN in industrial Applications ». Real Time Magazine, (2):20–24,
April 1996.