Utilice este identificador para citar o vincular a este ítem: https://rdu.iua.edu.ar/handle/123456789/2038
Título: Métodos de Lattice Boltzmann en equipos multicore
Autores: Montes, Miguel
Sacco, Carlos
Palabras claves: Procesamiento paralelo
Lattice-Boltzmann
OpenMP
multicore
Fecha de publicación: 29-nov-2010
Publicador: Departamento de Mecánica
Resumen: Este trabajo reporta el resultado de una prueba de implementación paralela de lo que se conoce como Lattice Boltzmann Methods (LBM). Se trata de métodos relativamente nuevos que contrastan con el enfoque tradicional de la mecánica computacional de fluidos, describiendo al fluido a nivel molecular y proponiendo modelos para la colisión entre moléculas. Se realizó en el marco del Intel(r) Manycore Testing Lab, una iniciativa de la empresa Intel que permite a universidades el acceso a computadoras de memoria compartida con 32 cores. Intel realizó un llamado para presentar proyectos, y nuestro grupo fue uno de los cinco seleccionados, junto con otro equipo de Argentina y tres de Rusia. El objetivo fue paralelizar código secuencial preexistente (en lenguaje Fortran), y evaluar el comportamiento del código paralelizado con distinto número de procesadores. Para ello se trabajó con alumnos de la carrera Ingeniería en Informática que cursaban la asignatura Programación Concurrente, dirigidos por los autores. La paralelización se realizó utilizando OpenMP, tanto en el código original Fortran como en versiones en lenguaje C. El equipo dispuso de cuatro semanas de acceso al Laboratorio Manycore, consistente en tres nodos de 32 procesadores. Este tiempo permitió testear distintas optimizaciones del código, tanto en Fortran como en C, y utilizando los compiladores GNU (gcc y gfortran) e Intel (icc e ifort). Se evaluaron la escalabilidad y la eficiencia del código para distintos tamaños de problema, para distinta cantidad de procesadores, con distintas estrategias de distribución del código entre procesadores, y las ventajas del uso o no de Hyperthreading. Como resultado pudimos obtener datos numéricos que nos permiten evaluar la utilidad de distintas optimizaciones y la escalabilidad del código utilizando este modelo de programación, la diferencia de rendimiento entre el código generado por los distintos compiladores, y, en general, el rendimiento de equipos SMP con esta cantidad de procesadores. Desde el punto de vista docente, fue una experiencia valiosa para los alumnos, que pudieron acceder a equipos aún no disponibles comercialmente, interactuar con los mecanismos de gestión de clústeres utilizados, y experimentar de primera mano con conceptos tales como escalabilidad, speedup y eficiencia de sus programas.
URI: https://rdu.iua.edu.ar/handle/123456789/2038
Appears in Colecciones:II Congreso Argentino de Ingeniería Aeronáutica

Archivos en este ítem:
Archivo Descripción TamañoFormato 
Montes.pdf424,23 kBAdobe PDFVer/Abrir


Este ítem está bajo una licencia Licencia Creative Commons Creative Commons