ANALISIS Y DISENO DE ALGORITMOS DE˜ PLANIFICACION DE...

44
ANALISIS Y DISE ˜ NO DE ALGORITMOS DE PLANIFICACI ´ ON DE TIEMPO REAL EN SISTEMAS DE MULTIPROCESAMIENTO Avance de tesis que presenta: Omar Ulises Pereira Zapata Asesor de Tesis: Dr. Pedro Mej´ ıa Alvarez. Secci´ on de Computaci´on CINVESTAV-IPN, M´ exico 1

Transcript of ANALISIS Y DISENO DE ALGORITMOS DE˜ PLANIFICACION DE...

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 PARTICIONADO

6

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

MODELO AND/OR

A1

A2

A B C

O3

O4

F G

a)b)

Estructuras AND/OR. a) Estructura AND. b) Estructura OR.

9

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

CONDICIONES DE PLANIFICABILIDAD PARA RMα = 0,8

24

% 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

CONCLUSIONES

44