1 / 57

PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio

PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio Transferencia de Calor sobre una Placa Julio Monetti. UTN-FRM. Agenda. Transferencia de Calor. Referencia al fenómeno físico Modelado Matemático Modelado Numérico Programación de una solución

senta
Download Presentation

PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio Transferencia de Calor sobre una Placa Julio Monetti. UTN-FRM

  2. Agenda Transferencia de Calor • Referencia al fenómeno físico • Modelado Matemático • Modelado Numérico • Programación de una solución • Paralelización y Simulación

  3. Referencia al fenómeno físico Fenómeno de Transferencia de Calor Investigación Experimental Cálculos Teóricos Modelado Establecer modelo matemático Observación del Fenómeno Establecer modelo numérico Simulación Recolección de Resultados Recolección de Resultados

  4. Referencia al fenómeno físico Fenómeno de Transferencia de Calor Cálculos Teóricos Ecuación Diferencial Establecer modelo matemático Diferencias Finitas Establecer modelo numérico Programa Serial Programación y Simulación Programa Paralelo Optimización Recolección de Resultados

  5. Modelo Matemático DtT = KDxxT • Flujo unidimensional • El calor fluye desde temperaturas mas altas hacia temperaturas mas bajas Tabla de valores típicos para la difusividad Boyce and DiPrima, Elementary Differential Equations and Boundary Value Problems, 6th ed.

  6. Modelo Matemático DtT = K(DxxT + DyyT) • Flujo bidimensional • El calor fluye desde temperaturas mas altas hacia temperaturas mas bajas. • Se tiene en cuenta un gradiente en dos direcciones x e y.

  7. Modelo Numérico (T1,j + T-1,j + T0,j+1 + T0,j-1 )/4=T0,j T1,j + T-1,j + T0,j+1 + T0,j-1 - 4T0,j=0 La resolución simultánea de la ecuación para todas las estaciones del dominio conduce a un sistema de ecuaciones lineales que puede resolverse de manera iterativa, hasta que las temperaturas nodales alcancen la convergencia.

  8. Método de las Diferencias Finitas

  9. Modelo Numérico Método de las Diferencias Finitas Dominio Continuo Dominio Discreto Ecuaciones Algebraicas Ecuaciones Diferenciales

  10. Modelo Numérico Método de las Diferencias Finitas INCÓGNITAS Dominio Discreto Ecuaciones Algebraicas • Número Finito de puntos • sobre la malla. • Equiespaciados en x e y

  11. Modelo Numérico Método de las Diferencias Finitas x x-h x+h • Diferencias hacia delante • Ap f(x) = ( f(x+h) – f(x) ) / h • Diferencias hacia atrás • Ap f(x) = ( f(x) – f(x-h) ) / h • Diferencias centrales • Ap f(x) = ( f(x+h) – f(x-h) ) / 2h

  12. Modelo Numérico Método de las Diferencias Finitas Discretización espacial en dos dimensiones

  13. Modelo Numérico Método de las Diferencias Finitas Discretización espacial en dos dimensiones x,y-h x-h,y x,y x+h,y x,y+h

  14. Modelo Numérico Método de las Diferencias Finitas Discretización espacial en tres dimensiones

  15. Modelo Numérico Método de las Diferencias Finitas Plano z-1 Plano z+1 • El cálculo de cada elemento depende del valor de sus elementos adyacentes en un instante anterior • En el caso de 3D cada elemento (excepto las fronteras) depende del valor de 6 elementos

  16. Modelo Numérico Método de las Diferencias Finitas h2 h1 h1 Cuando ? Cuando se modela, antes de simular Por qué ? Zonas de mayor crecimiento o decrecimiento Impurezas en el material. Necesidad de mayor precisión en el cálculo

  17. Modelo Numérico Método de las Diferencias Finitas x,y-h x-h,y x,y x+h,y x,y+h • El cálculo de cada elemento depende del valor de sus elementos adyacentes en un instante anterior • En el caso de 2D cada elemento (excepto las fronteras) depende del valor de 4 elementos (adyacentes)

  18. Modelo Numérico Método de las Diferencias Finitas Caso de Estudio Términos independientes Incógnitas Matriz de Coeficientes (Tk-1i-1,j + Tk-1i+1,j + Tk-1i,j+1 + Tk-1i,j-1 )/4=Tki,j • Sistema de ecuaciones Lineales • Características diagonales A{x} = {b}

  19. Modelo Numérico Método de las Diferencias Finitas Caso de Estudio Tk-1 Tk Se compara a través de la norma infinito

  20. Modelo Numérico Método de las Diferencias Finitas Caso de Estudio Matriz Diagonal. Para estudiar la transmisión de calor en 2 dimensiones T7 =( T6+T8+T2+T12 ) /4

  21. Modelo Numérico Método de las Diferencias Finitas Qué sucede cuando crece el modelo de datos ?

  22. Condiciones de Frontera

  23. Modelo Numérico Condiciones Iniciales y de Frontera • Condiciones de Frontera • T[x=0] = 0 T[x=L] = 1 • Tipos: Dirichlet y Newman • Condiciones Iniciales • Valores nodales para T en el tipo 0

  24. Modelo Numérico Método de las Diferencias Finitas Caso de Estudio Δx= Δy=1 xi+1-xi=yi+1-yi=1 Para cada nodo Ti,j Tki,j=(Tk-1i-1,j + Tk-1i+1,j + Tk-1i,j+1 + Tk-1i,j-1 )/4

  25. Método de Resolución

  26. Modelo Numérico Método de Resolución • Sistema de Ecuaciones Lineales • {x} =A-1{b} • Cantidad de celdas en A= (Cantidad de Incógnitas)2 • Cantidad de incógnitas en {b}=cantidad de puntos • Características de A • Simétrica • Rala • Matriz de coeficientes: Diagonal dominante.

  27. Modelo Numérico Método de Resolución • Métodos Iterativos • Calculan en forma progresiva la solución • Se puede aproximar la solución real con una precisión arbitraria. • Proceso • Se elije una tolerancia o cantidad de iteraciones. • Se inicia con una solución aproximada • Se itera sobre esta solución • Se compara la solución con la obtenida en la iteración anterior.

  28. Modelo Numérico Método de Resolución • Métodos Iterativos • Jacobi • Itera sobre una solución dada hasta conseguir convergencia • La convergencia se observa comparando la solución actual con la anterior. Para ello se deben mantener dos vectores con los resultados. • Gauss-Seidel • Mejora con respecto a Jacobi • Speed up en convergencia • Ahorro en el almacenamiento

  29. Modelo de Datos

  30. Modelo Numérico Modelo de Datos Matriz Tridiagonal. (Banda) Para estudiar la transmisión de calor en 1 dimensión 2 1 3 4

  31. Modelo Numérico Modelo de Datos 625 celdas en la matriz de coeficientes 113 en el vector unidimensional 18% !!!

  32. Modelo Numérico Modelo de Datos Cuenta de elementos contenidos en la banda ne = ne1 + ne2 + ... Sn = superd2 /2+ (pr-0.5) * superd superd:cantidad de superdiagonales Total = 2*Sn + m m: rango ---------------------------------------------------------------------------------------------- Indice sobre el arreglo unidimensional C=x-y Ks=K-C I=(Ks)2+[ (m-K) – 0.5 ] * Ks + y

  33. Modelo Numérico Modelo de Datos L=5 Matriz Banda. • Ancho de Banda • A=3 • Ancho de media Banda • M=1 • Espacio Interdiagonal • L=5 • E= L-1 • E=3 • L=3 • E=L-1 • E=1 L=3

  34. Modelo Numérico Método de las Diferencias Finitas Plano z-1 Plano z+1 • Cubo 3*3*3nodos. Cada plano tiene 9 nodos. • Sistema con 729 celdas. • E1=L1-1 • E2=L2-1

  35. Modelo Numérico Método de las Diferencias Finitas Plano z-1 Plano z+1 • x14=x13+x15+x11+x17+x5+x23 • Ancho de Banda = 45 sobre A27*27

  36. Modelo Numérico Modelo de Datos Matriz Banda. • Ancho de Banda • A=3 • Ancho de media Banda • M=1 • Espacio Interdiagonal • L1=3 • E1= L-2 • E1=1

  37. Solución Computacional

  38. Solución Paralela Solución Computacional • Lenguaje C • Arreglo bidimensional en forma dinámica para contener • temperaturas Tk. • Arreglo bidimensional en forma dinámica para contener • temperaturas Tk-1. • Determinación de una condición de parada: • Tolerancia • Cantidad máxima de iteraciones. • Utilización de norma L2 para calcular las diferencias entre • los vectores Tk y Tk-1.

  39. Solución Paralela Solución Computacional • while (no_convergencia) • para cada(i en dimension espacial x) • para cada(j en dimension espacial y) • calcular temperatura Tk(i,j) = Dif( Tk-1 )

  40. Solución Paralela

  41. Solución Paralela Solución Paralela Solución Serial Solución Paralela

  42. Solución Paralela Solución Paralela Solución Serial Solución Paralela

  43. Solución Paralela Solución Paralela • Características • Objetivo: Ganancia en los tiempos de procesamiento • Necesidad: Identificar partes del código serial paralelizables, granularidad, tiempos muertos, otros datos. • Proceso: Particionado de Datos • Dominio de datos • funcional • Comunicación entre procesos

  44. Solución Paralela Solución Paralela • Comunicación entre Procesos • Intercambio de mensajes entre iteraciones • Manipulación de Nodos Fantasma

  45. Solución Paralela Solución Paralela • Tecnología Aplicada • Lenguaje C ? Fortran ? • Librería MPI • Arquitectura Física • Infraestructura: edilicia, refrigeración, electricidad • Cluster con 12 PD. 1 Gb RAM. • Red ??? • Lógica • Nueva forma de pensar la solución: algoritmos paralelos • Recuperación ante fallos. • QoS: Balance de carga/Tunning/Instrumentación

  46. Solución Paralela Solución Paralela • Nodo Master • Particionar_conjunto_de_datos() • Distribuir_conjunto_de_datos( …Workers…) • while (no_convergencia) • para_cada_nodo_Worker i • recibir_condicion_convergencia i • Recibir_datos_procesados( …Workers…); • Consolidar_Resultados(); • Postproceso();

  47. Solución Paralela Solución Computacional Nodo Worker Recibir_datos_particionados(); while (continuar_trabajo) para cada(i en dimension espacial x) para cada(j en dimension espacial y) calcular temperatura Tk(i,j) = Dif( Tk-1 ) Controlar_convergencia_local() Comunicar_convergencia_local() continuar_trabajo = consultar_master Enviar_Datos_Procesados( 0 )

More Related