Descargar

Autooptimización en esquemas paralelos iterativos (página 2)

Enviado por Pablo Turmero


Partes: 1, 2
edu.red

El problema de Optimización

Objetivo: min t(s, vap, SP)? vap ? AP

Asignación de procesadores a las necesidades software

Técnicas:

Grafos de precedencia

Optimización analítica

Árboles de asignación

Estrategias heterogéneas (HoHe, HeHo)?

Metaheurísticas

……

9

edu.red

El problema de Optimización Cuestiones relevantes:

Particionado de datos

Análisis de dependencias

Asignación de recursos

Equilibrado de carga

Hipótesis:

Construcc. sotfware Modelado Autooptimización tº ejecución

Necesidad de establecer una metodología de trabajo

10

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos 11

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos Aplicaciones en esquemas paralelos iterativos 12

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos Aplicaciones en esquemas paralelos iterativos Desarrollo metodologías autoopt. sist. homogéneos 13

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos Aplicaciones en esquemas paralelos iterativos Desarrollo metodologías autoopt. sist. homogéneos Desarrollo metodologías autoopt. sist. heterogéneos 14

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos Aplicaciones en esquemas paralelos iterativos Desarrollo metodologías autoopt. sist. homogéneos Desarrollo metodologías autoopt. sist. heterogéneos Estrategias heterogéneas (HoHe, HeHo)? 15

edu.red

Metodología Tesis Etapas de la tesis

Construir modelo tº ejecución algoritmos iterativos Aplicaciones en esquemas paralelos iterativos Desarrollo metodologías autoopt. sist. homogéneos Desarrollo metodologías autoopt. sist. heterogéneos Estrategias heterogéneas (HoHe, HeHo)?

Metaheurísticas

16

edu.red

Metodología de autooptimización 17

edu.red

Construcción modelo tº ejecución 18

edu.red

Esquemas iterativos Esquema iterativos usados en multitud de problemas: Progr. Dinámica, Dijkstra, genéticos, sist. ecuaciones

Ejecución de un conjunto de instrucciones de forma iterativa hasta la condición de fin

Secuenciales Tipos Homogéneos Paralelos Heterogéneos

Caso (Programación Diferentes Prueba dinámica) Esquemas

Diferentes formas de calcular los datos: por filas, columnas, diagonales

19

edu.red

Programación dinámica Por filas

20

edu.red

Programación dinámica Por filas

Por columnas

21

edu.red

Programación dinámica Por filas

Por columnas

Por diagonales

22

edu.red

Programación dinámica Usados como ejemplos: Problema monedas, Mochila

Definición N: cantidad a devolver n: número tipos de monedas vi: valor de la moneda de tipo i, vi>0 qi: cantidad de monedas de tipo i, qi>0 c[i,j]= mínimo número de monedas para devolver cantidad j usando hasta los i tipos de monedas

c[i,j] = min { c[i-1,j-k*vi]+k}, 1< =i< =n, 1< =j< =N, k=0,..,j/vi

Objetivo: c[n,N]

Ecuación 23

edu.red

Esquema Secuencial

for i=1 to numero_de_decisiones for j=1 to tamaño_problema obtener la solución óptima con i decisiones y tamaño de problema j endfor endfor

Programación dinámica 24 FILAS

COLUMNAS

edu.red

Esquema Paralelo (dependencia de datos)?

for i=1 to numero_de_decisiones En Paralelo: for j=1 to tamaño_problema obtener la solución óptima con i decisiones y tamaño de problema j endfor Comunicaciones entre procesos endEnParalelo endfor

Esquemas iterativos 25

edu.red

AUTOOPTIMIZACIÓN EN SISTEMAS HOMOGÉNEOS 26

edu.red

Autooptimización en sistemas homogéneos Homogéneos: características similares no exactamente iguales

Relativa facilidad construir modelo tiempo ejecución

Determinar número procesos (p) = procesadores (P)?

Pruebas realizadas sobre diferentes sistemas:

SOLARIS/SUN (SUNEt)? (Un. Murcia)? PenFE (Un. Murcia) HOMOGÉNEOS ORIGIN 2000 (Un. Polit. Cat.) HPC160 (Inter e intranodo)? (Un. Polit. Cart.)?

KIPLING (Univ. Polit. Val.) HETEROGÉNEOS TORC (Univ. Tennessee)?

27

edu.red

Autooptimización en sistemas homogéneos DEPENDENCIA DE DATOS (VERSIONES A y B) 28

edu.red

Número procesadores Número procesadores Complejidad Complejidad Tamaño 10.000 Tamaño 50.000 Tamaño 100.000 Tamaño 500.000 Número procesadores Número procesadores Cociente de tiempos de ejecución entre versiones A y B en SUNEt Complejidad Complejidad Autooptimización en sistemas homogéneos 29

edu.red

Modelo teórico: Ttotal = Tcomputación + Tcomunicación

Coste secuencial:

Coste computacional paralelo (qi grande):

Coste comunicaciones:

Parámetro de complejidad o granularidad para aumentar comput.

Los SP son tc , ts y tw

El único AP es p

(Gp:) Proceso Pp-1

Autooptimización en sistemas homogéneos 30

edu.red

Diferentes posibilidades estimar parámetros sistema

Diferencias en speed-up Utilidad de sistemas autooptimización

Autooptimización en sistemas homogéneos 31

edu.red

Tiempos de comunicaciones en SUNEt (izq) y HPC160 (der)? Ratios de tiempos de comunicaciones en SUNEt (izq) y HPC160 (der)? Autooptimización en sistemas homogéneos 32

edu.red

Comparativa entre el número de procesos con los que se obtiene mejor tiempo de ejecución Autooptimización en sistemas homogéneos 33 El sistema debe decidir cómo ejecutar el algoritmo

edu.red

Media de los speedups máximos variando tamaño y granularidad Speedup variando procesadores, granularidad y tamaño Autooptimización en sistemas homogéneos 34

edu.red

Estimación de SP aritméticos: resolviendo un problema reducido

Estimación de SP de comunicac:

Ping-pong (CP1)? Solución de problema reducido variando el número de procesadores (CP2)? Solución de problema reducido variando el número de procesadores y el tamaño del problema (CP3)?

Comparativa del número de procesadores seleccionados con diferentes métodos con respecto al tmb Autooptimización en sistemas homogéneos 35

edu.red

Cocientes entre tiempos de ejecución obtenido con los diferentes métodos con respecto al tmb Autooptimización en sistemas homogéneos 36

edu.red

Comparación con usuarios:

Voraz (UV): usa todos los procesadores disponibles Conservador (UC): usa la mitad de los procesadores disponibles Experto (UE): usa un número de procesadores en función del tamaño del problema

Cocientes entre tiempos de ejecución obtenido con los diferentes usuarios con respecto al tmb Autooptimización en sistemas homogéneos 37

edu.red

Cocientes entre tiempos de ejecución obtenidos con los diferentes usuarios y métodos con respecto al tmb Autooptimización en sistemas homogéneos 38

edu.red

AUTOOPTIMIZACIÓN EN SISTEMAS HETEROGÉNEOS 39

edu.red

Autooptimización en sistemas heterogéneos Heterogéneos: agrupar elementos del sistema según características similares no exactamente iguales.

Mayor dificultad construir modelo tiempo ejecución.

Buscar parámetros algorítmicos / min tº ejec

t(s, AP, SP)?

AP= d, p d=(d0,d1,…,dP-1) SP= Más complejos

Construir algoritmos heterogéneos

Diferentes posibilidades Desarrollo métodos (exactos y/o aproximados de mapeo (asignar procesos a procesadores))?

40

edu.red

Distribución del trabajo y asignación de procesos a procesadores en un esquema de programación dinámica, en algoritmos heterogéneos (HeHo) (a) y homogéneos(HoHe) (b)? Autooptimización en sistemas heterogéneos 41

edu.red

Autooptimización en sistemas heterogéneos 42 Posibilidades de representación del árbol de asignación:

edu.red

Árbol de asignación con 2 tipos de procesadores y p procesos

Necesidad de limitar la altura del mismo

Cada nodo lleva asociada 3 cotas: EET, LET, GET.

Uso de técnicas de búsqueda en árboles para optimizar el modelo de tº ejecución

Autooptimización en sistemas heterogéneos 43

edu.red

Desviación con respecto al tmb obtenido experimentalmente, de los tiempos obtenidos con diferentes métodos y usuarios en una combinación de TORC 1 17P4 + 1 Ath + 1 SPIII + 8 DPIII (a) y 1 Ath + 1 SPIII + 8 DPIII (b)? a) b)? Autooptimización en sistemas heterogéneos 44

edu.red

Resultados de simulaciones diversas Autooptimización en sistemas heterogéneos 45

edu.red

METAHEURÍSTICAS EN LA AUTOOPIMIZACIÓN 46

edu.red

Metaheurísticas en la autooptimización OBJETIVO FINAL min tº ejec

Minimización analítica

Minimización numérica

Métodos exhaustivos

Métodos aproximados

Métodos heurísticos 47

edu.red

Metaheurísticas en la autooptimización 48 Esquema General de las Metaheurísticas

Inicializar(S)?

while no se cumple CondiciondeFin(S) do

SS = ObtenerSubconjunto(S);

if |SS|>1 then SS1= Combinar(SS); else SS1=SS; end

SS2 = Mejorar(SS1); S = IncluirSoluciones(SS2)? end

Búsqueda Dispersa (particularización)?

edu.red

Metaheurísticas en la autooptimización Esquema de la tecnica de Búsqueda Dispersa (particularización)?

CrearConjuntoInicial S; GenerarConjuntoReferencia RS;

while Convergencia no alcanzada do

Seleccionar elementos a combinar;

Combinar elementos seleccionados;

Mejorar elementos combinados;

ActualizarConjuntoReferencia RS con los elementos más prometedores y los más dispersos

end? 49

edu.red

Metaheurísticas en la autooptimización Mapeo como un problema de optimización

Representación y codificación soluciones: (do,d1, …, dP-1)? di = nº procesos asignados al procesador i

Gran cantidad de alternativas a la hora de instanciar el algoritmo:

50

edu.red

Metaheurísticas en la autooptimización

Comparación entre las posibilidades de opciones de selección e inclusión. Porcentaje en que mejora la búsqueda dispersa respecto al backtracking con poda Tiempos e iteraciones para diferentes métodos de selección e inclusión en el conjunto de referencia 51

edu.red

Metaheurísticas en la autooptimización Simulaciones para comparar Búsqueda dispersa y backtracking con poda

52

edu.red

Metaheurísticas en la autooptimización Pruebas en Kipling

53

edu.red

Metaheurísticas en la autooptimización Relación entre tiempos de decisión y modelado en una simulación concreta 54

edu.red

CONCLUSIONES Y TRABAJOS FUTUROS 55

edu.red

Conclusiones y Trabajos Futuros Optimización Autooptimización

tº = f(s,AP,SP)? Hipótesis investigación? + Búsqueda óptimo

Métodos exactos (Búsqueda exhaustiva)?

Alternativas Métodos aproximados

Métodos metaheurísticos

56

edu.red

Resultados generales en sistemas homogéneos(a), heterogéneos (b) y con el uso de metaheurísticas(c)?

Conclusiones y Trabajos Futuros a) b) 57 a) b) c)?

edu.red

Conclusiones y Trabajos Futuros 58 Aportaciones

VecPar04. Sistemas homogéneos.

HeteroPar04,Parallel Computing04. Sistemas heterogéneos.

Para06, Maeb07. Metaheurísticas.

Cluster07.

ICCS08.

Journal of Supercomping 09.

Trabajos futuros

Mejorar el modelado el tiempo de ejecución, sobre todo en sistemas heterogéneos

Aplicación en diferentes esquemas algorítmicos (divide & conquer, master – slave, backtracking…)?

Metaheurísticas diversas (tabú, temple simulado, géneticos …

Construcción de un entorno para la prueba y evaluación de metaheurísticas.

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente