Académique Documents
Professionnel Documents
Culture Documents
Distribuidos
Gestin de
procesos
Modelos de sistema
Asignacin de procesadores
Estrategias dinmicas
Estrategias estticas
Ejecucin remota de procesos
Modelos de
sistema
Organizacin de los procesadores en un SD
Tres alternativas:
Conjunto de estaciones de trabajo
Pool de procesadores
Modelo hbrido
Conjunto de estaciones de
trabajo
SD compuesto de estaciones de trabajo conectadas
Procesos de un usuario se ejecutan en su estacin de trabajo.
Discos locales se utilizan para paginacin, archivos
temporales, cache de ficheros y/o ficheros locales.
Normalmente hay un servidor de ficheros
Pool de
procesadores
Modelo hbrido
Comparacin de modelos
No hay reparto de carga en modelo de estaciones de trabajo
Puede haber estaciones de trabajo inactivas y otras muy cargadas.
En entornos tpicos se desperdicia 80% de ciclos totales de CPU.
Asignacin de
procesadores
Objetivos:
Decidir en qu procesador se debera ejecutar un proceso
Reparto y equilibrio de carga (load sharing/balancing)
Suposiciones:
Todos los procesadores son compatibles.
La velocidad de los procesadores puede ser distinta.
Un procesador puede comunicarse con cualquier otro.
Tipos de carga
Procesos cooperantes
Interaccionan entre s
Pertenecientes a una misma aplicacin paralela
Objetivo: minimizar tiempo de ejecucin de aplicacin
Procesos disjuntos
Procesos independientes
Pertenecientes a distintos usuarios
Objetivo: maximizar utilizacin de procesadores
Tipos de asignacin
Estrategias estticas
Determinista
Usada para procesos cooperantes
Asignacin a priori a partir de caractersticas de aplicacin paralela
Estrategias dinmicas
Reparto y equilibrio de carga dinmico
Usada para procesos disjuntos
Asignacin en tiempo de ejecucin
Estrategias dinmicas
Migratorias o No migratorias
Proceso puede cambiar de procesador durante su ejecucin?
Migratorias: mejor equilibrio de la carga pero ms complejas
Centralizadas o Distribuidas
Existe un coordinador central?
ptimas o Subptimas
Busca la mejor asignacin o una que sea aceptable?
Locales o Globales
Tiene en cuenta estado de la mquina local o estado del sistema?
Polticas de distribucin de
carga
Estrategia dinmica controlada por tres polticas:
Poltica de transferencia: determina cundo transferir.
Poltica de seleccin: selecciona el proceso a transferir.
Poltica de ubicacin: selecciona el nodo al que transferir.
Poltica de
transferencia
Generalmente, basada en umbral:
Si en nodo S carga > T unidades, S emisor de procesos
Si en nodo S carga < T unidades, S receptor de procesos
Tipos de transferencias:
Expulsivas: se pueden transferir procesos ejecutados parcialmente.
Supone transferir el estado del proceso.
Polticas de
seleccin
Elegir los procesos nuevos (transferencia no expulsiva).
Seleccionar los procesos con un tiempo de transferencia
mnimo (poco estado, mnimo uso de los recursos locales).
Seleccionar un proceso si su tiempo de respuesta estimado en
un nodo remoto es menor que el tiempo de respuesta local.
Poltica de
ubicacin
Muestreo: consulta de otros nodos para encontrar adecuado.
Alternativas:
Estabilidad: estable
Con altas cargas, probable que receptores encuentren emisores.
Un algoritmo combinado
(1/2)
Poltica de transferencia
Tmin
receptor
Tmax
emisor
Un algoritmo combinado
(2/2)
Poltica de ubicacin iniciada por el receptor:
Un receptor difunde un mensaje DESCARGADO y espera por
mensajes SOBRECARGADO.
Si llega un mensaje SOBRECARGADO, se enva un mensaje
ACEPTAR.
Si no, difundir un mensaje CAMBIO-MEDIA para decrementar la
carga media estimada en el resto de nodos.
Estrategias estticas
Asignar procesos de una aplicacin paralela a procesadores
minimizando el tiempo de ejecucin total
Debe buscar equilibrio entre paralelismo (uso de distinto procesador)
y minimizar coste de comunicaciones (uso del mismo procesador)
Modelo basado en
precedencias
Programa paralelo representado como grafo acclico
Ejemplo
10
10
1
20
1
2
20
Planificador
N2
1
10
30
36
N1
N1
N2
Uso de estrategias
migratorias
N1
1
N2
2
Con migracin
1
2
N1
N2
1
2
Modelo basado en
comunicaciones
Programa paralelo formado por procesos que se comunican
Modelado como grafo no dirigido donde:
P. ej. corte mnimo: Para P procesadores buscar P-1 cortes tal que se
minimice el flujo entre cada particin
Resultado: Cada particin (procesador) engloba a un conjunto de
procesos fuertemente acoplados
Ejemplo
Ejecucin remota de
procesos
Cmo ejecutar un proceso de forma remota?
Crear el mismo ambiente de trabajo:
entorno, directorio actual, etc.