Creation of software implemented on GPU for simulation of propagation of waves and fluids in different environments

González Rodríguez, David (2017). Creation of software implemented on GPU for simulation of propagation of waves and fluids in different environments. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. y Sistemas de Telecomunicación (UPM), Madrid.

Description

Title: Creation of software implemented on GPU for simulation of propagation of waves and fluids in different environments
Author/s:
  • González Rodríguez, David
Contributor/s:
  • László, Szirmay-Kalos
Item Type: Final Project
Degree: Grado en Ingeniería de Sonido e Imagen
Date: 20 July 2017
Subjects:
Freetext Keywords: Ondas electromágneticas Simuladores
Faculty: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Department: Otro
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (3MB) | Preview
[img] Archive (ZIP) (Anexos) - Users in campus UPM only
Download (3MB)

Abstract

La investigación en los campos de física e ingeniería implica la necesidad de utilizar conocimientos muy técnicos y específicos. Esto genera el requisito de utilizar un gran número de tecnologías especiales para poder realizar los cálculos necesarios y poder obtener un resultado aproximado del experimento o investigación. Para reproducir los fenómenos físicos que ocurren en la naturaleza se necesitan estudiar una gran cantidad de datos, provocando así la necesidad de realizar muchos cálculos para obtener los resultados finales buscados. Una vez obtenidos estos resultados, se debe decidir si se consideran favorables o desfavorables y si el estudio alcanza los objetivos esperados. En caso de descartar los resultados, los recursos y el tiempo invertido en la investigación pueden suponer una gran pérdida para el proyecto. Una manera de evitar este problema es la utilización de simuladores para predecir los resultados aproximados de la investigación. Los simuladores estudian una gran cantidad de información, lo que puede provocar que, aunque se ahorren recursos y dinero, aumente notablemente el tiempo necesario para obtener dichos resultados. Por estas razones, el presente Proyecto de Fin de Grado tiene como objetivo crear dos programas que permitan la simulación de ondas electromagnéticas, de calor y de sonido dentro de una habitación. El conocimiento físico aplicado parte de dos ideas principales: la propagación del calor y la propagación de las ondas en un determinado entorno. Además, se describe la forma de creación de un software para simular fluidos en función de los datos necesarios a representar. Actualmente hay muchos programas de simulación basados en los procesos físicos elegidos en este proyecto, pero la gran mayoría de ellos utiliza la unidad central de procesamiento (CPU) como procesador principal para realizar los cálculos requeridos, por lo que el tiempo invertido para obtener los resultados puede ser muy grande. Por ello, se ha decidido utilizar tecnologías novedosas para la creación de los softwares, consiguiendo así reducir el tiempo de procesamiento de los datos y el tiempo necesario para representar los resultados. Estas tecnologías son el estándar OpenGL y la arquitectura CUDA, ambas utilizan la unidad de procesamiento gráfico (GPU) en lugar de utilizar la CPU. El estándar OpenGL se utiliza para generar gráficos en 2D y 3D utilizando la tarjeta gráfica a partir de geometrías sencillas. Algunos ejemplos de uso de esta tecnología son la realidad virtual, simuladores de vuelo o desarrollo de videojuegos. La arquitectura CUDA es una tecnología desarrollada y utilizada por la empresa NVIDIA sobre sus tarjetas gráficas, la cual permite el uso de miles de hilos trabajando en paralelo para realizar los cálculos de una forma mucho más rápida. Otra ventaja de esta tecnología es la utilización de memoria compartida por los hilos, consiguiendo así un menor tiempo de acceso de memoria entre ellos. Abstract: Engineering and physical research involves the need to use very specific knowledge, which causes the requirement to have a large number of special technologies to perform all expected and necessary calculations. Physical phenomena need a lot of data, which causes a lot of calculations to obtain the final results sought. Once these results have been obtained, it is decided whether they are considered favourable or unfavourable and if the study achieves the expected objectives. In case the results are discarded, the time and resources invested in the research can be a great loss for this. Therefore, a good way to avoid this is to use simulators that can predict the approximate results of the research. These simulations can take a great deal of time to research which causes a slowdown in this, despite the resources it saves. Because of it, this Bachelor’s Thesis aims to create two programs that allow the simulation of electromagnetic, heat and sound waves. The applied physical knowledge starts from two main ideas, the propagation of heat inside a room and the propagation of waves in a certain environment. Also, the implementation of a fluid program will be commented in the project, but not implemented. There are currently many simulation programs based on the physical processes chosen in the present project, but most of them use CPU processing, which causes the large amounts of time already commented on to obtain the final results. Therefore, it has been decided to use novel technologies that allow the creation of fast software to perform the necessary calculations, thus achieving a reduction in the waiting time to obtain the simulated results. These technologies are the OpenGL standard and the CUDA architecture, both used by the Graphics Processor Unit (GPU). The OpenGL standard is used in different applications to generate graphs in 2D and 3D using the graphics card from simple geometries. Some examples of use are virtual reality, flight simulations or video game development. The CUDA architecture is a technology created by the company NVIDIA and allows the use of thousands of threads to calculate the needs provided by the program or the application. Another great advantage of this technology is the shared memory that it offers to the threads, obtaining a shorter access time to memory.

More information

Item ID: 52609
DC Identifier: http://oa.upm.es/52609/
OAI Identifier: oai:oa.upm.es:52609
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 15 Oct 2018 05:22
Last Modified: 15 Oct 2018 05:22
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM