Anda di halaman 1dari 30

Propuesta de un sistema Paralelo para la Construccin de Redes Porosas considerando Restricciones Geomtricas

Alumno: Angel Gonzlez Mndez Asesor: Dra. Graciela Rman Alonso


Universidad Autnoma Metropolitana - Iztapalapa Maestra en Ciencias y Tecnologas de la Informacin Departamento de Ingeniera Elctrica

Noviembre de 2013

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Contenido

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

2 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Simulacin Medios Porosos Programacin Paralela

Contenido

Introduccin Simulacin Medios Porosos Programacin Paralela Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

2 3 4 5

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

2 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Simulacin Medios Porosos Programacin Paralela

Simulacin Medios Porosos

Prcticamente todo material que nos rodea tiene un nivel de porosidad Por qu simular materiales porosos?:
La experimentacin con materiales reales suele ser costosa y en ocasiones peligrosa A travs de los resultados obtenidos con la simulacin se realizan experimentos reales con mayor precisin Con la simulacin es posible crear diversos escenarios

Un medio poroso se conforma por varios millones de poros por lo que su demanda de cmputo es muy alta

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

3 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Simulacin Medios Porosos Programacin Paralela

Arquitecturas y la Programacin Paralela

(a) Multi-Core

(b) Cluster hbrido

(c) GPU

Para obtener el mximo potencial de las nuevas arquitecturas se requieren modelos de programacin hbridos

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

4 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Objetivos Generales y Especcos Metodologa

Contenido

1 2

Introduccin Objetivos y Metodologa Objetivos Generales y Especcos Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

3 4 5

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

4 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Objetivos Generales y Especcos Metodologa

Objetivos
Objetivo General Diseo y desarrollo de un simulador de redes porosas considerando restricciones geomtricas Objetivos Especcos Anlisis de las capacidades de las arquitecturas Multi-Core y GPU Propuesta de algoritmos de particionamiento y distribucin de datos entre Multi-Core y GPU Propuesta e implementacin de un algoritmo paralelo para la construccin de redes porosas Propuesta e implementacin de una interfaz grca para el simulador
Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 5 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Objetivos Generales y Especcos Metodologa

Metodologa

Estudio y anlisis de los algoritmos actuales para simulacin de redes porosas Estudio y anlisis de las arquitecturas Multi-Core y GPU Propuesta e implementacin de un algoritmo paralelo para la construccin de redes porosas Diseo de una arquitectura eciente de comunicacin entre el Multi-core y GPU Generacin de resultados Publicacin de resultados y escritura de la tesis

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

6 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Contenido
1 2 3 Introduccin Objetivos y Metodologa Estado del Arte Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida Algoritmo Propuesto Avances y Calendario

4 5

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

6 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Modelo Dual de Sitios y Enlaces(DSBM)[1]


Se establece el tamao(L) y la conectividad(C ) de la red Una red porosa cbica se conforma por L3 sitios y 3L3 enlaces Los radios de sitios y enlaces se representan a travs de dos distribuciones normales FS (RS ) y FB (RB ) respectivamente El traslape() indica la dicultad de conexin entre sitios y enlaces

S. Cordero, et al., Review: Site-Bond Network Modeling of Disordered Porous Media,2004. Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 7 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Construccin de redes porosas


Principio de Construccin(CP ) El tamao de cada sitio debe ser mayor o al menos igual al tamao de cualquiera de los enlaces conectados al mismo.[2] [3] [4] [5]

(a) CP vlido
2 3 4 5 S. Cordero, et al., Simulation of threedimensional porous networks,2001.

(b) CP invlido

G. Romn, et al.,In-silico simulation of porous media: Conception and development of a greedy algorithm, 2011. J. Matadamas, et al.,"Parallel Simulation of Pore Networks Using Multicore CPUs, 2012. C.H. Moreno, et al., A Parallel Simulator for Mercury (Hg) Porosimetry, 2009. Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 8 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Construccin de redes porosas


Restricciones Geomtricas(GR ) Establecen que por cada par de enlaces conectados a un sitio estos no deben se traslaparse.

(a) GR vlida

(b) GR invlida

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

9 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Algoritmos para la construccin


Cabe destacar que la mayora de los trabajos relacionados solo se basan en el CP Los algoritmos BiaSED[2] y NoMISS[3] son dos de los algoritmos ms utilizados para la creacin de redes porosas mediante el DSBM El algoritmo BiaSED construye una red vlida a partir de una invlida aplicando Pasos de Monte Carlo El algoritmo Greedy NoMISS construye una red vlida a partir de soluciones parcialmente vlidas En ambos algoritmo se aplican una serie de Pasos de Monte Carlo para mejorar la isotropa Se han implementado sus respectivas versiones paralelas utilizando MPI[4]
Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 10 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Implementaciones Paralelas
La red se distribuye entre los N nodos a utilizar Cada subred tiene un tamao Lx Ly Lz Las fronteras de las subredes se omiten Se realizan una serie de trasferencias entre las subredes para lograr manipular todos los poros Se organizan en una topologa tipo toro

(a) Distribucin entre 8 nodos


Angel Gonzlez Mndez

(b) Trasferencia de subredes


Noviembre de 2013 11 / 25

MCyTI, UAM - Iztapalapa

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Construccin secuencial considerando GR


1

6 7

Se generan L3 sitos y 3L3 enlaces y se almacenan dos listas ordenadas LS y LB respectivamente Se inserta un conjunto de nclusters (semillas) de LS en posiciones aleatorias de la red Se hace crecer cada cluster o semilla con los elementos de LS hasta alcanzar un lmite establecido(clustersize ) Al nal el primer cluster utiliza los elementos restantes de LS para abarcar toda la red Se asignan C enlaces de LB a cada sitio de la red donde cada enlace asignado cumple con el CP y con las GR Se cuenta el nmero de sitios violaciones Se aplica una serie de Pasos de Montecarlo hasta eliminar todas las violaciones
Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 12 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Arquitecturas Heterogneos
Cada vez es frecuente encontrar equipos o clusters que se componen de procesadores multi-core y GPUs Para sacar provecho de este tipo de arquitecturas es necesario utilizar un modelo de programacin hbrido como se muestran en [6],[7] y [8] Sin embargo al utilizar modelos hbridos se debe tomar en cuenta la comunicacin y el distribucin de los datos En particular el uso de GPUs puede traer consigo un problema extra que es la incompatibilidad entre GPUs
6 7 8

J. Diaz, et al., A Survey of Parallel Programming Models and Tools in the Multi and Many-Core Era, 2012. JY. Chao, et al., Hybrid Parallel Programming on GPU Clusters, 2010. K.A. Hawick, et al., Mixing Multi-Core CPUs and GPUs for Scientic Simulation Software, Res. Lett. Inf. Math. Sci., vol. 14, pp. 25-77, 2010. Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 13 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Modelado de Redes Porosas Construccin de Redes Porosas Trabajo Relacionado Programacin Hbrida

Programacin Hbrida

En base a los resultados que se muestran en diversos trabajos no existe un modelo hbrido perfecto La eciencia de un modelo hbrido depende directamente de la aplicacin Para mejorar el rendimiento en modelos hbridos se pueden utilizar tcnicas como: la superposicin[9] y el particionamiento funcional[10]

9 10

J.B. White, et. al, Overlapping Computation and Communication for Advection on Hybrid Parallel Computers , 2011. Z. Ziming, et. al, Data Partitioning on Heterogeneous Multicore and Multi-GPU Systems Using Functional Performance Models of Data-Parallel Applications , 2012. Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 14 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Contenido

1 2 3 4 5

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

14 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Algoritmo propuesto

Se propone un algoritmo paralelo que cumpla tanto con el CP y con las GR sobre un sistema de memoria compartida En algoritmo se compone de las siguientes fases paralelas:
Distribucin espacial de la red Sembrado y construccin de clusters Asignacin de enlaces Aplicacin de Pasos de Monte Carlo

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

15 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Distribucin de la red
Se dividir la red en N subredes, donde N es el nmero de hilos a utilizar El algoritmo factoriza N en los tres nmeros enteros ms pequeos que satisfacen N = a b c , en el mejor de los casos a = b = c = 3 N.

(a) 4 hilos - (1,2,2)

(b) 8 hilos - (2,2,2)

(c) 64 hilos - (4,4,4)

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

16 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Sembrado y construccin de clusters

Genera dos listas ordenadas locales denotadas por LS y LB para los sitios y enlaces respectivamente Se inserta un conjunto de nclusters /N (semillas) de LS en posiciones aleatorias de la subred Se hace crecer cada cluster o semilla con los elementos de LS hasta alcanzar un lmite establecido(clustersize ) Cada vez que se llega al lmite clustersize se cambia el origen Al nalizar del sembrado el primer cluster utiliza los elementos restantes de LS para abarcar toda la subredred

4 5

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

17 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Sembrado y construccin de clusters

Figura: Construccin de un cluster de tamao 3


Angel Gonzlez Mndez MCyTI, UAM - Iztapalapa Noviembre de 2013 18 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Sembrado y construccin de clusters

(a) Origen en (0,0,0)

(b) Cambio de origen a (0,2,0)

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

19 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Asignacin de enlaces
Se tiene una lista LSC la cual contiene la ubicacin de L3 /N sitios insertados en la fase anterior Se asignan C 3 enlaces de LB a cada sitio en LSC donde cada enlace asignado cumple con el CP y con las GR

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

20 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Pasos de Monte Carlo


Un MCs involucra 4 L 3 intercambios de poros, cada intercambio debe mejorar o igualar el estado de la subred en trminos del CP y/o GR La red se divide en 2 N partes y a cada hilo se le asignan 2 subredes de forma aleatoria Se cuenta el nmero de violaciones en cada par de subredes Se aplican los MCs hasta eliminar todas las violaciones Adicionalmente de cambia el origen para abarcar toda la red

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

21 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Propuesta de comunicacin para un sistema hbrido

Debido a que el algoritmo propuesto se basa en data-paralelismo se utilizara la tcnica de particionamiento funcional para la distribucin de los datos Para determinar la distribucin de los datos entre un Multi-Core y un GPU utilizando particionamiento funcional se requiere de
Evaluar la capacidad de cmputo de las Multi-Core Evaluar la capacidad de cmputo de las GPUs* En base a los resultados se determinara la distribucin espacial de los datos entre Multi-Core y GPUs

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

22 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Avances Calendario

Contenido

1 2 3 4 5

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario Avances Calendario

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

22 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Avances Calendario

Avances

Se implemento el algoritmo propuesto utilizando OpenMP Se esta implementando algoritmo propuesto para GPUs Para la implementacin de la interfaz grca se tomo el curso Visualizacin de Volumen durante el trimestre 13-O

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

23 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Avances Calendario

Resultados

(a) Secuencial

(b) Paralelo

Dados los buenos resultados de la implementacin con OpenMP se escribi un artculo el cual se encuentra en revisin por el IPDPS-2014

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

24 / 25

Introduccin Objetivos y Metodologa Estado del Arte Algoritmo Propuesto Avances y Calendario

Avances Calendario

Calendario
14-I Concluir la implementacin hbrida y generar los resultados correspondientes Escritura de un artculo de revista Escritura y entrega de la primera versin de la idnea comunicacin de resultados 14-P Conclusin y entrega de la versin nal de la idnea comunicacin de resultados Defensa oral del trabajo de investigacin ante un jurado especializado

Angel Gonzlez Mndez

MCyTI, UAM - Iztapalapa

Noviembre de 2013

25 / 25

Anda mungkin juga menyukai