PDF de programación - Computación Cluster y Grid - Gestión de procesos

Imágen de pdf Computación Cluster y Grid - Gestión de procesos

Computación Cluster y Grid - Gestión de procesosgráfica de visualizaciones

Publicado el 8 de Septiembre del 2017
522 visualizaciones desde el 8 de Septiembre del 2017
1,1 MB
62 paginas
Creado hace 16a (05/03/2008)
Computación Cluster y Grid
Computación Cluster y Grid
Computación Cluster y Grid

Computación Cluster y Grid

Gestión de Procesos
Gestión de Procesos

111

Gestión de Procesos

1. Conceptos y taxonomías: Trabajos y sistemas

T b j

i t

í

t

2. Planificación estática:

t
C
paralelos
Pl
Planificación de tareas dependientes
Planificación de tareas paralelas
Planificación de múltiples tareas

ió d

á i



Pl

ifi

ifi

l

l

3. Planificación dinámica:
Equilibrado de carga
Migración de procesos
Migración de datos
Equilibrado de conexiones

E ilib d d

i

2

Computación Cluster y Grid

Escenario de Partida: Términos

t

t

d t

C j

Trabajos: Conjuntos de tareas (procesos o hilos)
)

T b j
que demandan: (recursos x tiempo)
Recursos: Datos, dispositivos, CPU u otros requisitos
CPU

D t

R
i
(finitos) necesarios para la realización de trabajos.
Tiempo: Periodo durante el cual los recursos están
Tiempo: Periodo durante el cual los recursos están

hil

di

iti

it

(

asignados (de forma exclusiva o no) a un determinado
trabajo.j

Relación entre las tareas: Las tareas se deben

ejecutar siguiendo unas restricciones en relación a los
datos que generan o necesitan (dependientes y
concurrentes)

Planificación: Asignación de trabajos a los nodos

de proceso correspondientes. Puede implicar
revisar, auditar y corregir esa asignación.

dit



i

i

i

3

Computación Cluster y Grid

Escenario de Partida

Recursos demandados

Nodos
Nodos

(Procesadores)

Trabajos

Tareas

OBJETIVO
d l


b j

ió d l

A i

Asignación de los trabajos de los usuarios a los
distintos procesadores, con el objetivo de mejorar

prestaciones frente a la solución tradicional



i



l

4

Computación Cluster y Grid

Características de un Sistema Distribuido
Si t
Sistemas con memoria compartida
tid
Recursos de un proceso accesibles desde todos los

i

procesadores
p
Mapa de memoria
Recursos internos del SO (ficheros/dispositivos abiertos, puertos, etc.)
Reparto/eq ilibrio de carga (load sharing/balancing) a tomático
Reparto/equilibrio de carga (load sharing/balancing) automático
Si el procesador queda libre puede ejecutar cualquier proceso listo

Beneficios del reparto de carga:

p

g

Mejora uso de recursos y rendimiento en el sistema
Aplicación paralela usa automáticamente procesadores disponibles

di t ib id

Sistemas distribuidos

Si t
Proceso ligado a procesador durante toda su vida
Recursos de un proceso accesibles sólo desde procesador local
Recursos de un proceso accesibles sólo desde procesador local
No sólo mapa de memoria; También recursos internos del SO

Reparto de carga requiere migración de procesos

5

Computación Cluster y Grid

Escenario de Partida: Trabajos
ti

Q é
t ?
¿Qué se tiene que ejecutar?
Tareas en las que se dividen los trabajos:
Tareas disjuntas

j

Procesos independientes
Pertenecientes a distintos usuarios

Tareas cooperantes

Interaccionan entre sí
Pertenecientes a una misma aplicación
Pueden presentar dependencias
O Pueden requerir ejecución en paralelo

6 Sistemas Operativos Distribuidos

6

Computación Cluster y Grid

Tareas Cooperantes
t



t

d

D
Dependencias entre tareas
Modelizado por medio de un

i

Ej
l l
Ejecución paralela
Implican un número de

grafo dirigido acíclico
grafo dirigido acíclico
(DAG).

Tareas

Transferencia de datos

Ejemplo: Workflow

tareas concurrentes
tareas concurrentes
ejecutando
simultáneamente:
De forma síncrona o

asíncrona.

En base a una topología de
En base a una topología de

conexión.

Siguiendo un modelo

t

maestro/esclavo o
distribuido.

/

l

Con unas tasas de
comunicación y un
intercambio de mensajes.

Ejemplo: Código MPI
Ejemplo: Código MPI

7 Sistemas Operativos Distribuidos

7

Computación Cluster y Grid

t

i

d

Escenario de Partida: Objetivos
Q é “
i ?
j
¿Qué “mejoras de prestaciones” se espera conseguir?
Tipología de sistemas:
Sistemas de alta disponibilidad
Sistemas de alta disponibilidad
HAS: High Availability Systems
Que el servicio siempre esté operativo
Que el servicio siempre esté operativo
Tolerancia a fallos



Sistemas de alto rendimiento

HPC: High Performance Computing
Que se alcance una potencia de cómputo mayor
Ejecución de trabajos pesados en menor tiempo
Ejecución de trabajos pesados en menor tiempo

Sistemas de alto aprovechamiento

HTS: High Troughput Systems
HTS: High Troughput Systems
Que el número de tareas servidas sea el máximo posible
Maximizar el uso de los recursos o servir a más clientes (puede

no ser lo mismo).

8 Sistemas Operativos Distribuidos

8

Computación Cluster y Grid

d

Sistemas de Cómputo
Dependen de uso previsto del sistema:
d

D
Máquinas autónomas de usuarios independientes

Usuario cede uso de su máquina pero sólo cuando está

i t d l

¿Qué ocurre cuando deja de estarlo?

d
U
desocupada
¿
Migrar procesos externos a otros nodos inactivos
Continuar ejecutando procesos externos con prioridad baja

á i

i t

ól

d

j

i

d

ó

Sistema dedicado sólo a ejecutar trabajos paralelos

S
Se puede hacer una estrategia de asignación a priori
O ajustar el comportamiento del sistema dinámicamente
O ajustar el comportamiento del sistema dinámicamente
Se intenta optimizar tiempo de ejecución de la aplicación o el

aprovechamiento de los recursos

Sistema distribuido general (múltiples usuarios y

aplicaciones)
Se intenta lograr un reparto de carga adecuado
d

S i t

t d

d

t

l

9 Sistemas Operativos Distribuidos

9

Computación Cluster y Grid

Tipología de Clusters

Beowulf; programas paralelos; MPI; dedicación a un problema

Cl

Hi h P f

High Performance Clusters
t
High Availability Clusters
High Availability Clusters
ServiceGuard, Lifekeeper, Failsafe, heartbeat
High Throughput Clusters
High Throughput Clusters

Workload/resource managers; equilibrado de carga; instalaciones de

supercomputación

Según servicio de aplicación:
Según servicio de aplicación:

Web-Service Clusters
Storage Clusters

LVS/Piranha; equilibrado de conexiones TCP; datos replicados
LVS/Piranha; equilibrado de conexiones TCP; datos replicados

GFS; sistemas de ficheros paralelos; identica visión de los datos desde

cada nodo

Database Clusters

Oracle Parallel Server;
Oracle Parallel Server;

10 Sistemas Operativos Distribuidos

10

Computación Cluster y Grid

Planificación
l d

i t

l

li

ifi



La planificación consiste en el despliegue de las

L
tareas de un trabajo sobre unos nodos del sistema:
Atendiendo a las necesidades de recursos
Atendiendo a las necesidades de recursos
Atendiendo a las dependencias entre las tareas
El rendimiento final depende de diversos factores:
El rendimiento final depende de diversos factores:
Concurrencia: Uso del mayor número de procesadores

d l

simultáneamente.

Grado de paralelismo: El grado más fino en el que se

pueda descomponer la tarea.

Costes de comunicación: Diferentes entre
Costes de comunicación: Diferentes entre

procesadores dentro del mismo nodo y procesadores
en diferentes nodos.

Recursos compartidos: Uso de recursos (como la

memoria) comunes para varios procesadores dentro
del mismo nodo
del mismo nodo.

11

Computación Cluster y Grid

Planificación
Dedicación de los procesadores:

d

ió d l

D di
Exclusiva: Asignación de una tarea por procesador.
Tiempo compartido: En tareas de cómputo masivo con
Tiempo compartido: En tareas de cómputo masivo con
E/S reducida afecta dramáticamente en el rendimiento.
Habitualmente no se hace.

La planificación de un trabajo puede hacerse de dos

t

i

l



formas:
Planificación estática: Inicialmente se determina
ifi

Pl
dónde y cuándo se va a ejecutar las tareas asociadas
a un determinado trabajo. Se determina antes de que
a un determinado trabajo. Se determina antes de que
el trabajo entre en máquina.

táti

d t

I i

Planificación dinámica: Una vez desplegado un

t b j
trabajo, y de acuerdo al comportamiento del sistema,
se puede revisar este despliegue inicial. Considera
que el trabajo ya está en ejecución en la máquina.
q

t d l

j y

i t

q

d

d

i

l

t

i

j

12

Computación Cluster y Grid

Gestión de Procesos

Planificación Estática

13

Computación Cluster y Grid

Planificación Estática
t

d

li

t

l

Generalmente se aplica antes de permitir la

G
ejecución del trabajo en el sistema.

iti

El planificador (a menudo llamado resource
El planificador (a menudo llamado resource

l

manager) selecciona un trabajo de la cola (según
política) y si hay recursos disponibles lo pone en
p
ejecución, si no espera.

) y

p

p

y

Cola de Trabajos

Planificador

Recursos?

í


no
pespera

Sistema

Computación Cluster y Grid

Trabajos

j

14

l

i

t

Descripción de los Trabajos
d

d i

di

Para poder tomar las decisiones correspondientes a

P
la política del planificador, éste debe disponer de
información sobre los trabajos:
información sobre los trabajos:
Número de tareas (ejecutables correspondientes)
(cid:1
  • Links de descarga
http://lwp-l.com/pdf6872

Comentarios de: Computación Cluster y Grid - Gestión de procesos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad