PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio
-
Upload
boris-curry -
Category
Documents
-
view
32 -
download
0
description
Transcript of PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio
![Page 1: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/1.jpg)
PROGRAMACIÓN EN CLUSTERSFernando Tinetti. UNLP. Mayo-2009
Caso de EstudioTransferencia de Calor sobre
una PlacaJulio Monetti. UTN-FRM
![Page 2: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/2.jpg)
Transferencia de CalorAgenda
1.Referencia al fenómeno físico2.Modelado Matemático3.Modelado Numérico4.Programación de una solución5.Paralelización y Simulación
![Page 3: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/3.jpg)
Fenómeno de Transferencia de Calor
Investigación Experimental Cálculos Teóricos
Establecer modelo matemático
Establecer modelo numérico
Simulación
Recolección de Resultados
Modelado
Observación del Fenómeno
Recolección de Resultados
Referencia al fenómeno físico
![Page 4: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/4.jpg)
Fenómeno de Transferencia de Calor
Cálculos Teóricos
Establecer modelo matemático
Establecer modelo numérico
Programación y Simulación
Recolección de Resultados
Diferencias Finitas
Referencia al fenómeno físico
Ecuación Diferencial
Programa Serial
OptimizaciónPrograma Paralelo
![Page 5: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/5.jpg)
Modelo Matemático
DtT = KDxxT
•Flujo unidimensional•El calor fluye desde temperaturas mas altas hacia temperaturas mas bajas
MaterialK2=largo2/
tiempo
plata 1.71
Aluminio 0.86
Acero 0.12
Granito 0.011
Ladrillo 0.0038
agua 0.00144
Tabla de valores típicos para la difusividadBoyce and DiPrima, Elementary Differential Equations and Boundary Value Problems, 6th ed.
![Page 6: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/6.jpg)
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.
![Page 7: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/7.jpg)
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.
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
![Page 8: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/8.jpg)
Método de las Diferencias Finitas
![Page 9: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/9.jpg)
Método de las Diferencias Finitas
Dominio Continuo Dominio Discreto
EcuacionesDiferenciales
EcuacionesAlgebraicas
Modelo Numérico
![Page 10: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/10.jpg)
Método de las Diferencias Finitas
Dominio Discreto
EcuacionesAlgebraicas
Modelo Numérico
•Número Finito de puntos sobre la malla.•Equiespaciados en x e y
INCÓGNITAS
![Page 11: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/11.jpg)
x-h x+hx
Método de las Diferencias FinitasModelo Numérico
•Diferencias hacia delanteAp 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
![Page 12: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/12.jpg)
Método de las Diferencias FinitasModelo Numérico
Discretización espacial en dos dimensiones
![Page 13: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/13.jpg)
Método de las Diferencias FinitasModelo Numérico
x-h,y x,y x+h,y
x,y+h
x,y-h
Discretización espacial en dos dimensiones
![Page 14: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/14.jpg)
Método de las Diferencias FinitasModelo Numérico
Discretización espacial en tres dimensiones
![Page 15: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/15.jpg)
Método de las Diferencias FinitasModelo Numérico
•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
Plano z+1
Plano z-1
![Page 16: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/16.jpg)
Método de las Diferencias FinitasModelo Numérico
h1h2 h1
Cuando ? Cuando se modela, antes de simular
Por qué ?Zonas de mayor crecimiento o decrecimientoImpurezas en el material.Necesidad de mayor precisión en el cálculo
![Page 17: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/17.jpg)
Método de las Diferencias FinitasModelo Numérico
x-h,y x,y x+h,y
x,y+h
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)
![Page 18: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/18.jpg)
Método de las Diferencias FinitasCaso de Estudio
(Tk-1i-1,j + Tk-1
i+1,j + Tk-1i,j+1 + Tk-1
i,j-1 )/4=Tki,j
Modelo Numérico
•Sistema de ecuaciones Lineales•Características diagonales
A{x} = {b}
Matriz de Coeficientes
Incógnitas
Términos independientes
![Page 19: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/19.jpg)
Método de las Diferencias FinitasCaso de Estudio
Modelo Numérico
bk-11
bk-12
bk-13
bk-1n
Tk-1 Tk
bk1
bk2
bk3
bkn
Se compara a través de la norma infinito
![Page 20: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/20.jpg)
Matriz Diagonal.
Para estudiar la transmisión de calor en 2 dimensiones
T7 =( T6+T8+T2+T12 ) /4
Modelo Numérico Método de las Diferencias FinitasCaso de Estudio
![Page 21: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/21.jpg)
Método de las Diferencias FinitasModelo Numérico
Qué sucede cuando crece el modelo de datos ?
![Page 22: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/22.jpg)
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4
![Page 23: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/23.jpg)
Condiciones de Frontera
![Page 24: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/24.jpg)
Condiciones Iniciales y de FronteraModelo Numérico
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
![Page 25: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/25.jpg)
Δx= Δy=1xi+1-xi=yi+1-yi=1
Para cada nodoTi,j
Método de las Diferencias FinitasCaso de Estudio
Tki,j=(Tk-1
i-1,j + Tk-1i+1,j + Tk-1
i,j+1 + Tk-1i,j-1 )/4
Modelo Numérico
![Page 26: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/26.jpg)
Método de Resolución
![Page 27: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/27.jpg)
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.
Método de ResoluciónModelo Numérico
![Page 28: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/28.jpg)
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.
Método de ResoluciónModelo Numérico
![Page 29: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/29.jpg)
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
Método de ResoluciónModelo Numérico
![Page 30: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/30.jpg)
Modelo de Datos
![Page 31: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/31.jpg)
Matriz Tridiagonal. (Banda)
Para estudiar la transmisión de calor en 1 dimensión
1 32 4
1 1
1 -2 1
1 -2 1
1 1
Modelo de DatosModelo Numérico
1 1 1 1 -2 -2 -2 1 1 1 1
![Page 32: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/32.jpg)
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4
![Page 33: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/33.jpg)
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
625 celdas en la matriz de coeficientes
113 en el vector unidimensional 18% !!!
Modelo de DatosModelo Numérico
![Page 34: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/34.jpg)
Modelo de DatosModelo Numérico
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-yKs=K-CI=(Ks)2+[ (m-K) – 0.5 ] * Ks + y
![Page 35: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/35.jpg)
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4
![Page 36: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/36.jpg)
Matriz Banda.
Modelo de DatosModelo Numérico
•Ancho de Banda A=3
•Ancho de media Banda M=1
•Espacio Interdiagonal L=5E= L-1E=3
L=3E=L-1E=1
L=5
L=3
![Page 37: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/37.jpg)
Método de las Diferencias FinitasModelo Numérico
•Cubo 3*3*3nodos. Cada plano tiene 9 nodos.•Sistema con 729 celdas.
•E1=L1-1•E2=L2-1
Plano z+1
Plano z-1
![Page 38: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/38.jpg)
Método de las Diferencias FinitasModelo Numérico
•x14=x13+x15+x11+x17+x5+x23
Ancho de Banda = 45 sobre A27*27
Plano z+1
Plano z-1
![Page 39: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/39.jpg)
Matriz Banda.
Modelo de DatosModelo Numérico
•Ancho de Banda A=3
•Ancho de media Banda M=1
•Espacio Interdiagonal L1=3 E1= L-2 E1=1
![Page 40: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/40.jpg)
Solución Computacional
![Page 41: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/41.jpg)
Solución ComputacionalSolución Paralela
•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.
![Page 42: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/42.jpg)
Solución ComputacionalSolución Paralela
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 )
![Page 43: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/43.jpg)
Solución Paralela
![Page 44: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/44.jpg)
Solución ParalelaSolución Paralela
Solución Serial
Solución Paralela
![Page 45: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/45.jpg)
Solución ParalelaSolución Paralela
Solución Paralela
Solución Serial
![Page 46: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/46.jpg)
Solución ParalelaSolució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
![Page 47: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/47.jpg)
Solución ParalelaSolución Paralela
Comunicación entre Procesos
Intercambio de mensajes entre iteraciones
Manipulación de Nodos Fantasma
![Page 48: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/48.jpg)
Solución ParalelaSolució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
![Page 49: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/49.jpg)
Solución ParalelaSolució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();
![Page 50: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/50.jpg)
Solución ComputacionalSolución Paralela
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 )
![Page 51: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/51.jpg)
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4 1
1 1 -4
![Page 52: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/52.jpg)
Solución ParalelaSolución Paralela
Nodos Fantasmas
•Necesidad que tiene cada proceso de conocer datos que se encuentran en otro proceso.
•En cada iteración del proceso de Jacobi es necesario intercambiar valores
•En el ejemplo: 5 valores 2 mensajes
![Page 53: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/53.jpg)
Solución ParalelaSolución Paralela
•Si la cantidad de puntos en la discretización horizontal es L•Cada procesador deberá intercambiar 2*L elementos consus procesos contiguos, excepto aquellos procesadores queatienden los extremos del sistema de ecuaciones.
•Intercambio de nodos•En la placa: una frontera
•En el sistema de ecuaciones: Submatriz•Una parte del vector B.
![Page 54: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/54.jpg)
Solución ParalelaSolución Paralela
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
![Page 55: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/55.jpg)
Solución ParalelaSolución Paralela
-4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
1 1 -4 1 1
![Page 56: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/56.jpg)
Solución ComputacionalSolución Paralela
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 intercambiar_nodos_Fantasmas()
Enviar_Datos_Procesados( 0 )
![Page 57: PROGRAMACIÓN EN CLUSTERS Fernando Tinetti. UNLP. Mayo-2009 Caso de Estudio](https://reader030.fdocumento.com/reader030/viewer/2022032709/568131d1550346895d983a58/html5/thumbnails/57.jpg)
Transferencia de Calor
Conclusiones
1.Observación del fenómeno físico2.Modelado de las Ecuaciones Diferenciales3.Modelado de las Ecuaciones algebraicas4.Matices del modelo numérico.5.Diseño lógico y físico.
1.Algoritmos2.Estructuras de datos
6.Optimización.7.Simulación