analisis y diseno de algoritmos de˜ planificacion de...
TRANSCRIPT
ANALISIS Y DISENO DE ALGORITMOS DEPLANIFICACION DE TIEMPO REAL ENSISTEMAS DE MULTIPROCESAMIENTO
Avance de tesis que presenta:Omar Ulises Pereira Zapata
Asesor de Tesis:Dr. Pedro Mejıa Alvarez.
Seccion de ComputacionCINVESTAV-IPN, Mexico
1
CONTENIDO
Introduccion
Planteamiento del problema
Objetivos
Avances obtenidos
Trabajo futuro
Publicaciones
Conclusiones
2
INTRODUCCION
La correctitud de un Sistema de Tiempo Real se basa tanto enun buen funcionamiento logico, como en el cumplimiento de lasrestricciones de tiempos.
Los Sistemas de Tiempo Real (STR) se pueden clasificar como:
• STR Duros (hard)
• STR Suaves (soft)
3
PLANIFICACION DE TAREAS DE TIEMPO REAL
Los algoritmos de planificacion se pueden clasificar en:
• Algoritmos con manejo de prioridad fija
• Algoritmos con manejo de prioridad dinamica.
La planificacion puede realizarse en forma:
• Fuera de lınea (Off-line)
• En lınea (on-line)
4
PLANIFICACION SOBRE MULTIPROCESADORES
La solucion general al problema de planificacion de un conjuntode tareas de tiempo real sobre multiprocesadores envuelve dosalgoritmos: Uno que asigna las tareas a procesadoresindividuales, y otro que las planifique en cada procesador.
La planificacion sobre multiprocesadores puede realizarsesiguiendo:
• Esquema Particionado
• Esquema No-Particionado o Global
5
ESQUEMA NO-PARTICIONADO
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
COLA GLOBAL DE TAREAS
PLANIFICADOR
PROCESADORES
P1
P2
Pn
7
RESTRICCIONES DE PRECEDENCIA
Si una tarea no puede comenzar su ejecucion hasta que todassus predecesoras hayan terminado, entonces diremos que es unatarea del tipo AND.
Si una tarea comienza su ejecucion cuando alguna o algunas desus predecesoras directas terminen, entonces diremos que esuna tarea del tipo OR.
Si el conjunto completo posee tareas del tipo AND y del tipoOR, entonces diremos que el conjunto de tareas tienerestricciones de precedencia AND/OR.
8
RESTRICCIONES DE ENERGIA
Minimizacion del consumo de energıa es importante paradispositivos tales como: Laptops, PDA’s, sistemas de computoempotrados, etc., donde el tiempo de vida util de la bateria escrıtico.
Desarrolladores de hardware han introducido estandares en elproblema del manejo de energıa tales como ACPI (AdvancedConfiguration and Power Interface).
Recientemente algunos procesadores permiten operar en unrango de voltajes y frecuencias, considerando de esta manera elmanejo de energıa.
10
TAREAS DE TIEMPO REAL
NO DESALOJABLES DESALOJABLES
PERIODICASAPERIODICAS
NO DESALOJABLES DESALOJABLES
SISTEMAS
UNIPROCESADORES
SISTEMAS CON
MULTIPLES PROCESADORES
TAREAS
INDEPENDIENTES
TAREAS CON
RESTRICCIONES DE
PRECEDENCIA
MANEJO DE ENERGIA
NUMERO DEPROCESADORES
FIJO
NUMERO DE PROCESADORES
INFINITO
11
PLANTEAMIENTO DEL PROBLEMA
Problema 1: ¿Cual es el numero mınimo de procesadores requeridopara ejecutar un conjunto de tareas periodicas expulsablesconsiderando un esquema de planificacion global, de forma tal quetodas las tareas cumplan con sus plazos de respuesta, utilizando laspolıticas de planificacion Rate Monotonic y EDF?
12
OBJETIVOS
Desarrollar algoritmos de planificacion para el esquema globalque sean eficientes.
Comparar los algoritmos desarrollados contra los algoritmosexistentes tanto en el esquema particionado, ası como en elesquema global.
Establecer las condiciones necesarias en donde el esquemaglobal mejora al esquema particionado.
13
PLANTEAMIENTO DEL PROBLEMA
Problema 2:
¿De que forma es posible planificar un conjunto de tareas detiempo real con restricciones de precedencia en un ambiente demultiples procesadores?.
Las restricciones de precedencia a considerar son del tipo: a)Simples (AND), y b) Compuestas (con restricciones AND y OR).
14
OBJETIVOS
El problema que se plantea, considera un sistema de tiempo real endonde existe una sobrecarga.
Maximizar el numero de tareas resultante despues de eliminarla sobrecarga.
Maximizar el valor del conjunto de tareas resultante.
15
PLANTEAMIENTO DEL PROBLEMA
Problema 3:
¿Cual es el consumo mınimo de energıa posible que puede obtenerseen un sistema de tiempo real con multiples procesadores de formatal que todas las tareas cumplan con sus plazos de respuesta?
16
VARIANTES DEL PROBLEMA # 3 A CONSIDERAR
Numero de procesadores infinito: El problema consiste enencontrar el numero mınimo de procesadores para planificar unconjunto de tareas periodicas tal que se minimize el consumode energıa y se cumplan con los plazos de respuesta.
Numero de procesadores fijo: El problema consiste enminimizar el consumo de la energıa tal que se cumplan losplazos de respuesta de las tareas del sistema.
Con perdida de plazos: El problema consistirıa en minimizarel consumo de energıa en un sistema en donde se permite laperdida de plazos de respuesta de las tareas.
17
OBJETIVO FINAL
Se considera atacar el problema de minimizar el consumo de energıaen sistemas de tiempo real sobre multiples procesadores, en dondelas tareas son crıticas y ademas poseen restricciones de precedencia.
18
TRABAJO REALIZADO
Se realizo un estudio de las condiciones de planificabilidad paraRate Monotonic sobre un procesador.
Se realizo un analisis comparativo de los mejores algoritmos deplanificacion de tiempo real sobre multiprocesadores, tanto delesquema particionado ası como del esquema global.
Se redefinieron y propusieron algunos algoritmos deplanificacion de tiempo real bajo RM en el esquemaparticionado.
19
MODELO SIMPLE DE TAREAS
Una tarea puede caracterizarse de forma simple como un parordenado (P, C) donde:
P : Periodo de la tareaC : Tiempo de ComputoD = P donde D es el plazo de respuesta.
Se define.
U = C/P como la utilizacion de la tarea.
20
OTRAS CONSIDERACIONES
Los procesadores son homogeneos.
Las tareas son periodicas y desalojables.
Todas las tareas son independientes.
Las tareas solo requieren accesos al procesador.
Todo el computo extra (overhead) realizado por las operacionesdentro del kernel se considera nulo.
Se utilizaran los esquemas de planificacion particionado yglobal.
21
CONDICION DE PLANIFICABILIDAD WC
Condicion WC: Si un conjunto τ de n tareas es planificable deacuerdo al algoritmo RM, entonces la mınima utilizacion que selogra del CPU es n(21/n − 1).
0.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
2 4 6 8 10 12 14 16 18 20
∑n i=
1 C
i / T
i
No. de Tareas (n)
22
CONDICIONES DE SIMULACION
Los periodos de las tareas se generaron utilizando distribucionuniforme donde:
10 ≤ Ti ≤ 500
Los tiempos de computo se obtienen bajo una distribucionuniforme con:
0 ≤ Ci ≤ αTi
Se varıa el factor de carga maximo α entre 0 y 1.
α = maxi=1..n Ui
Se consideraron conjuntos de tareas con utilizaciones entre75 % y 95 %.
23
% DE FACTIBILIDAD CON UTILIZACION = 80 %
Condiciones de Planificabilidad α
0.2 0.5 0.8 1.0
WC 0 6 53 69
IP 0 10 65 80
UO 0 25 81 85
RBOUND 0 33 74 84
PO 0 37 76 89
HC 0 10 55 71
ROOT 0 13 59 73
Algoritmo SR 59 99 99 100
Algoritmo DCT 63 99 100 100
Algoritmo 1 53 78 97 99
Algoritmo 3 61 79 97 99
25
CONDICIONES DE PLANIFICABILIDAD PARA RM
Algoritmo Cota de Utilizacion Complejidad
Condicion WC n(21/n − 1) O(n)
Condicion IP Cn/Tn ≤ 2(1 + u(n−1)
)−(n−1) − 1 O(n log n)
Condicion PO U ≤ (n − 1)(2β/(n−1) − 1) + 21−β − 1 O(n log n)
Condicion RBOUND U ≤ (n − 1)(r1/(n−1) − 1) + 2/r − 1 O(n log n)
Condicion UO Cn/Tn ≤ 2[∏n−1
i=1(1 + ui)]
−1− 1 O(n)
Condicion HC K(21/K − 1) O(n5/2)
Condicion ROOT R(21/R − 1) O(n2)
SR O(n log n)
DCT O(n2)
ALGORITMO 1 O(n2)
ALGORITMO 2 O(n2)
ALGORITMO 3 O(n3)
26
RENDIMIENTOS DE LOS ALGORITMOS
Sea N0 y N(A) el numero de procesadores usado por un algoritmooptimo y el numero de procesadores usado por la heurıstica Arespectivamente. Entonces el rendimiento asintotico en el peor casodel algoritmo A, denotado como <(A) se define:
<(A) = lımN0→∞
N(A)N0
27
RESUMEN ALGORITMOS FUERA DE LINEA
Algoritmo Condicion Complejidad <(A)
RMNF Condicion IP O(n log n) 2.67
RMFF Condicion IP O(n log n) 2.33
RMBF Condicion IP O(n log n) 2.33
RM-FFDU Condicion UO O(n log n) 5/3
FFDUF Condicion WC O(n log n) 2.0
RMST Condicion PO O(n log n) 1/1-α
RMGT Condicion PO y IFF O(n log n) 7/4
RBound-MP Condicion Rbound O(n log n) Desconocido
28
RESUMEN ALGORITMOS EN DE LINEA
Algoritmo Condicion Complejidad <(A)
RMNF-WC Condicion WC O(n) 2.88
RMFF-WC Condicion WC O(n log n) 2.33
RMBF-WC Condicion WC O(n log n) 2.33
RMGT-M Condicion PO O(n) 1/(1-α)
Next Fit M Condicion WC O(n) 2.28
29
CONDICIONES DE SIMULACION
Se definen k conjuntos de tareas donde:
100 ≤ k ≤ 1000
Los periodos tienen una distribucion uniforme donde:
1 ≤ Ti ≤ 500
Los tiempos de computo se obtienen bajo una distribucionuniforme con:
0 ≤ Ci ≤ αTi
Se varıa el factor de carga maximo α entre 0 y 1.
α = maxi=1..n Ui
30
ALGORITMOS FUERA DE LINEA BAJO RM
0
100
200
300
400
500
600
700
100 200 300 400 500 600 700 800 900 1000
NU
ME
RO
DE
PR
OC
ESA
DO
RE
S
NUMERO DE TAREAS
α = 0.8
CARGA TOTALRMNFRMFFRMBF
FFDUFRM-FFDU
RMSTRMGT
RBOUND-MP
31
ALGORITMOS EN LINEA BAJO EDF
0
100
200
300
400
500
600
100 200 300 400 500 600 700 800 900 1000
NU
ME
RO
DE
PR
OC
ESA
DO
RE
S
NUMERO DE TAREAS
α = 0.8
CARGA TOTALEDF-NFEDF-FFEDF-BF
EDF-WF
32
ALGORITMOS GLOBALES BAJO RM
0
100
200
300
400
500
600
100 200 300 400 500 600 700 800 900 1000
NU
ME
RO
DE
PR
OC
ESA
DO
RE
S
NUMERO DE TAREAS
α = 0.8
CARGA TOTALRM
ADAPTIVE-TKCRM-US[m/(3m-2)]
33
CONDICIONES DE SIMULACION
Los periodos tienen una distribucion uniforme donde:
1 ≤ Ti ≤ 500
Los tiempos de computo se obtienen bajo una distribucionuniforme con:
0 ≤ Ci ≤ αTi
Se varıa el factor de carga maximo α entre 0 y 1.
α = maxi=1..n Ui
El numero de procesadores a considerar en los experimentosson: 4, 8 y 16.
34
ALGORITMOS FUERA DE LINEA BAJO RM
0
20
40
60
80
100
7 8 9 10 11 12 13 14 15 16
% F
AC
TIB
ILID
AD
UTILIZACION
α = 0.5
RMNFRM-FFDU
FFDUFRMFFRMBFRMSTRMGT
RBOUND-MP
35
ALGORITMOS FUERA DE LINEA BAJO EDF
0
20
40
60
80
100
11.5 12 12.5 13 13.5 14 14.5 15 15.5 16
% F
AC
TIB
ILID
AD
UTILIZACION
α = 0.5
EDF-NFIEDF-FFIEDF-BFI
EDF-WFIEDF-NFDEDF-FFDEDF-BFD
EDF-WFD
36
ALGORITMOS GLOBALES BAJO RM
0
20
40
60
80
100
7 8 9 10 11 12 13 14 15 16
% F
AC
TIB
ILID
AD
UTILIZACION
α = 0.5
RMADAPTIVE-TKC
RM-US[m/(3m-2)]
37
RESUMEN ALGORITMOS MODIFICADOS
Algoritmo Condicion Complejidad <(A)
RMSTMod Condicion PO O(n log n) 1/1-α
RMGTMod Condicion PO y IFF O(n log n) Desconocido
RMFFMod Condicion WC y IFF O(n log n) 7/4
RMBFMod Condicion WC y IFF O(n log n) 7/4
38
0
100
200
300
400
500
600
700
100 200 300 400 500 600 700 800 900 1000
No.
PR
OC
ES
AD
OR
ES
No. TAREAS
ALGORITMOS MODIFICADOS FUERA DE LINEA
Factor de Carga = 0.8
UTILIZACION TOTALRMST
RMST-ModRMGT
RMGT-Mod
39
0
100
200
300
400
500
100 200 300 400 500 600 700 800 900 1000
No.
PR
OC
ES
AD
OR
ES
No. TAREAS
ALGORITMOS MODIFICADOS EN LINEA
Factor de Carga = 0.8
UTILIZACION TOTALRMFF
RMFF-ModRMBF
RMBF-Mod
40
TRABAJO FUTURO
Realizar una serie de experimentos con distribuciones diferentesa la uniforme.
Desarollo e implementacion de un algoritmo de planificacionpara el esquema global.
Continuar con el trabajo establecido en los problemas 2 y 3antes descritos.
41
1er. 3er.2do. 1er. 2do. 3er. 1er. 2do. 3er.
REVISION DEL ESTADOPROBLEMA 1.
DEL ARTE.
DESARROLLO DE
ESCRITURA.
PROBLEMA 2.
REVISION DEL ESTADODEL ARTE.
DESARROLLO DE ALGORITMOS.
ALGORITMOS.
ESCRITURA.
PROBLEMA 3.
REVISION DEL ESTADODEL ARTE.
DE INVESTIGACIONSEMINARIOS
PROBLEMA CON
INFINITOS.
PROBLEMA CONPROCESADORES
2003 2004 2005
CUATRIMESTRES
PROCESADORESFIJOS.
ESCRITURA.
42
PUBLICACIONES
Omar U. Pereira Zapata and Pedro Mejıa-Alvarez, “Analysis of
Real-Time Multiprocessor Scheduling Algorithms”, Proceedings of
the IEEE Real-Time Systems Symposium, Cancun, Mexico.3-5
December 2003.
43