Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN...

38
Sistemas de Tiempo Real 1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación

Transcript of Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN...

Page 1: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 1

Planificación en Multiprocesadores

Dr. Pedro Mejia Alvarez

CINVESTAV-IPN

Departamento de Computación

Page 2: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 2

Objetivos

• Comprender los problemas relacionados con las políticas de planificación sobre multiprocesadores

• Entender los dos esquemas de asignamiento de tareas: El esquema Particionado y el no-Particionado

• Revisar algunos algoritmos propuestos sobre el tema.

Page 3: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 3

Indice

Introducción

Bin Packing

Asignamiento de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 4: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Planificacion de Tiempo Real

22 3311

P

Como se planifica un conjunto de tareas tal que sus Como se planifica un conjunto de tareas tal que sus requermientos de tiempo real se garantizen ?requermientos de tiempo real se garantizen ?

ad hocprocess

Proceso de ingenieria

basado en metodos analiticos

Desarrollo de algoritmos de planificacion RM,DM and EDF y sus tecnica de analisis

Page 5: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Real-Time Scheduling

22 3311

P

RM,DM and EDF tienen:

• cotas de utilizacion conocidas• algoritmos de despacho en tiempo de ejecucion eficientes• bajo numero de expulsiones• la habilidad de planificar tareas esporadicas y con restricciones de sincronizacion

Como se planifica un conjunto de tareas tal que sus Como se planifica un conjunto de tareas tal que sus requermientos de tiempo real se garantizen ?requermientos de tiempo real se garantizen ?

Page 6: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Planificacion de tiempo real en multiples procesadores

22 3311

P1

Como planificar un conjunto de tareas de tiempo real tal que sus Como planificar un conjunto de tareas de tiempo real tal que sus requerimientos de tiempo real se satisfagan y se logre:requerimientos de tiempo real se satisfagan y se logre:• cotas de utilizacion conocidas (altas)• algoritmos de despacho en tiempo de ejecucion eficintes.• fbajo numero de expulsiones • la habilidad de planificar tareas esporadicas y con restricciones de sincronizacion

Problemas:

P2

Page 7: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Planificacion de tiempo real en multiples procesadores

22 3311

P1

• Problema de la Asignacion de tareas a procesadores.• Problema de la planificaciond e las tareas en los procesadores.

2 Problemas principales a resolver:

P2

Page 8: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 8

Indice

Introducción

Bin Packing

Asignamiento de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 9: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 9

Bin Packing

Dado un número de artículos (A, ..., E) de varios pesos.

De que manera es posible colocarlos en dos cajas

de tal forma que el máximo peso de los artículos

en cada caja, no exceda los 20Kg.

Page 10: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 10

Bin Packing

Primer enfoque para resolver el problema.

Repeat for all unpacked boxes

escoga el articulo mas pesado que queda

pongalo en el bin mas ligero

end repeat

La operación sería: Poner (A,1),(B,2),(D,1),(E,2),(C,2)

El problema es donde poner F ?.

Page 11: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 11

Bin Packing

El problema es fácil al resolverlo intuitivamente, pero el

tratar de formalizarlo es complejo..

Page 12: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 12

Bin PackingQue pasa si incrementamos el número de artículos ?

No. Artículos No. Combinaciones

4 24

5 120

6 720

7 5040

8 40320

9 362880

12 479,001,600

Page 13: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 13

Bin Packing

Algoritmos aproximados para Bin Packing.

First Fit (FF)

Best Fit (BF)

First Fit Decreasing (FFD)

Best Fit Decreasing (BFD)

Page 14: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 14

Indice

Introducción

Bin Packing

Asignacion de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 15: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 15

Asignacion de tareas

El asignamiento puede llevarse a cabo:

Off-line

-Hard Real Time

On -line

- Primero se lleva a cabo una prueba de

aceptación de la tarea.

Page 16: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 16

Asignacion de tareas

Dado un número de tareas T={t1,...,tn] a procesar sobre una máquina con un cierto número de

procesadores P={p1,...,pk}.

Encontrar para cada tarea una asignacion tal que el número de procesadores sea el mínimo?

I:{ti,...,tn} ---> {p1,...,pk}

Page 17: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 17

Asignamiento de tareas

Ejemplo:

Como planificar n independientes periódicas

y desalojables tareas, cuyos deadlines son iguales

a sus respectivos periodos, usando el algoritmo de

planificación EDF?

Page 18: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Test de Planificabilidad basado en RMS

• Para el modelo simple, con prioridades monótonas en frecuencia, los plazos están garantizados si

U = N ( 21/N - 1)

es la utilización mínima garantizada para N tareasmin

N

j

N

j

j NT

CU

1

/1 12

Page 19: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Planificación EDF

• Algoritmo optimo bajo un solo procesador y tareas expulsables.• Como se sabe si un conjunto de tareas es planificable bajo EDF ?• Se pueden garantizar los plazos de respuesta si se cumple que:

UC

Ti

ii

N

1

1

•Optima con una cota de utilización del 100%

•Si plazo < periodo, verifica los tiempos de respuesta en un intervalo igual a el hiperperiodo con fase de tareas 0.

Page 20: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Suposiciones de la planificación

• Las tareas pueden ser periódicas o aperiodicas.• Se ejecutan en un solo procesador• Las tareas son expulsables y no comparten recursos• Los plazos son iguales a los periodos.• No hay overhead del sistema operativo.

Page 21: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

• Rate-Monotonic

• Earliest Deadline First

(2, 1)

(5, 2.5)

missed deadline

(2, 1)

(5, 2.5)

0 1 2 3 4 5 6 7 8 9 10

Planificación basada en Prioridades

Page 22: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 22

Asignacion de tareas

Si se tienen tareas uniformemente distribuidas [0, U]

la utilización total por procesador en el algoritmo

First Fit es igual 0.98U en promedio.

De la misma manera la utilización total por procesador

en el algoritmo First Fit Drecreasing es igual a

0.98U en promedio.

Page 23: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 23

Asignacion de tareas

Planificación con desalojo de independientes

periódicas tareas con prioridades fijas

sobre multiprocesadores homogéneos

puede resolverse usando uno de dos

esquemas diferentes basados en como

las tareas son asignadas a los procesadores.

Esquema Particionado y Esquema No-Particionado

Page 24: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 24

Indice

Introducción

Bin Packing

Asignamiento de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 25: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 25

Definición de un modelo simple

Las tareas son independientes, con arrivos periódicos y pueden siempre ser desalojables.

Las tareas no requieren un acceso exclusivo a algún otro recurso que no sea el procesador.

El costo del desalojo es considerado nulo.

.

El costo de migración es considerado cero.

Page 26: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 26

Definición de un modelo simple

Los procesadores se consideran homogéneos.

El costo cuando una tarea arriba es cero.

En general los costos de comunicación y cambio de contexto son considerados nulos.

Page 27: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

P1 P2 P3

particionado

P1 P2 P3

global

Algoritmos de planificacion en multiples procesadores: global vs particionado

Page 28: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 28

Indice

Introducción

Bin Packing

Asignamiento de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 29: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 29

Esquema Particionado

Todas las instancias de una tarea son ejecutadas sobre

el mismo procesador.

El procesador a utilizar será determinado antes por un

algoritmo de particionamiento

Garantiza el rendimiento de los tiempos de ejecución

(en términos de planificabilidad )

Page 30: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 30

Esquema Particionado

Dispacher

Page 31: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 31

Algoritmo RMFF

Esta Heurística es conocida como el Rate Monotonic Fisrt Fit.

De acuerdo con este algoritmo, las tareas son primero ordenadasen un orden creciente correspondiente a sus periodos.

Así se asignan las tareas en turno, comenzando desde T1 hasta que todas son asignadas siguiendo el First Fit algoritmo.

Una tarea Ti puede ser asignada a un procesador si la utilizacióntotal de Ti y las tareas x ya asignadas previamente al procesador es igual o menor que URM(x+1).

Page 32: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 32

Algoritmo RMFFTi ui Ti ui Ti ui

(2,1) 0.500 (4.5,.01) 0.022 (8,1) 0.125(2.5,0.1) 0.040 (5,1) 0.300 (8.5,0.1) 0.012(3,1) 0.333 (6,1) 0.167 (9,1) 0.111(4,1) 0.250 (7,1) 0.143

P1: (2,1), (2.5,0.1), (4.5,0.1), (6,1), (8.5,.0.1)P2: (3,1), (4,1), (7,1)P3: (5,1), (8,1), (9,1)

(a)

P1: (2,1), (3,1), (6,1)P2: (4,1), (5,1), (7,1), (8,1), (9,1)P3: (2.5,0.1), (4.5,0.1), (8.5,0.1)

(b)

Page 33: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 33

Indice

Introducción

Bin Packing

Asignamiento de tareas.

Definición de un modelo simple de Sistema.

Esquema Particionado.

Esquema No Particionado

Page 34: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 34

Esquema No Particionado

La tarea puede ejecutarse sobre cualquier procesador

aun después de haber sido desalojada.

No existe una prueba de planificabilidad eficiente.

No hay un esquema optimo de asignamiento de

prioridad.

Page 35: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 35

GRMS.

GRMS es un esquema de planificación global para

tareas usando Rate Monotonic sobre

multiprocesadores.

El control de admisión es un algoritmo que asegura que

solamente las tareas cuyos deadlines son

conocidas serán aceptadas en el sistema.

Posee costos de migración bajos.

Page 36: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 36

GRMS.

Por que utilizar un esquema global?

Task Period Computation Utilization

T1 5 3 0.60

T2 7 4 0.57

T3 10 2 0.20

T4 15 7 0.46

Page 37: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 37

GRMS.

Para tareas de tiempo real criticas la prueba de aceptación deberá asegurar que ninguna tarea admitida

pierda su plazo.

Dos algoritmos de control de admisión.

Instante Critico

Control de admisión optimo

Page 38: Sistemas de Tiempo Real1 Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación.

Sistemas de Tiempo Real 38

Algoritmos Eficientes

RMST (Rate Monotonic Small Tasks)

RMGT (Rate Monotonic General Tasks)

Adaptive TkC

......