TAZ-TFM-2012-085


2D shallow flow simulation using GPU technologies

Lacasta Soto, Asier Heradio
García Navarro, Pilar (dir.) ; Murillo Castarlenas, Javier (dir.)

Universidad de Zaragoza, EINA, 2012
Ciencia y Tecnología de Materiales y Fluidos department, Mecánica de Fluidos area

Máster Universitario en Mecánica Aplicada

Abstract: Los modelos matemáticos y métodos numéricos implicados en la simulación de flujos con superficie libre han sido estudiados durante tiempo en el Grupo de Hidráulica Computacional de la Universidad de Zaragoza. Estos modelos son la base de nuevos desarrollos como el transporte de sedimento, el modelado de interacción con puentes o el acoplamiento hidrológico. A pesar de la calidad de estos métodos, el coste computacional es muy alto y en gran parte esto se debe a la tecnología numérica que requieren. Con la finalidad de superar esta limitación, este trabajo estudia la implementación de un código de simulación hidráulica orientada a ejecución en GPU, permitiendo simular un amplio conjunto de situaciones transitorias en gran escala temporal, con un tiempo de simulación razonable. El coste computacional de éste tipo de herramientas ha sido reducido, tradicionalmente, utilizando técnicas de paralelismo, implicando un alto número de procesadores para reducir el tiempo de cálculo al máximo. En los últimos años, las frecuencias de los procesadores parecen haber alcanzado su límite por lo que las técnicas de paralelismo en procesadores masivos son una nueva opción. En este trabajo, se analiza el rendimiento del código implementado en GPU, comparándolo con su equivalente en CPU. Este segudo, viene siendo desarrollado, en su totalidad, en Fortran mientras que el primero, ha sido desarrollado utilizando el lenguaje de programación C, compartiendo el procesamiento geométrico con la versión CPU. Las fucionalidades implementadas en la versión GPU, cubre una gran parte de situaciones de interés, tales como el avance de una inundación, los cambios de fondo y fricción y algunas condiciones de contorno de entrada y de salidas. La implementación del método en GPU no es trivial y requiere de un conocimiento en profundidad del funcionamiento de esta tecnología a bajo nivel. Los beneficios de la versión GPU serán analizados a través de la aceleración repecto a la versión CPU en diferentes tipos de caso. EL rendimiento del código GPU además, será medido teniendo en cuenta el uso de mallas no estructuradas, las cuales suelen ser necesarias en muchos codigos de CFD. Para su simulación, se utilizará la GPU Tesla c2075 de nVidia. Además se utilizará el estándar CUDA, que hace la programación más sencilla que otros estándar en programción GPU, permietiendo al programador exprimir los beneficios de esta tecnología.

Tipo de Trabajo Académico: Trabajo Fin de Master

Creative Commons License



El registro pertenece a las siguientes colecciones:
Academic Works > Trabajos Académicos por Centro > escuela-de-ingeniería-y-arquitectura
Academic Works > End-of-master works



Back to search

Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)