Show simple item record

dc.contributor.advisorWeingaertner, Daniel
dc.contributor.authorSepka Junior, José Aurimar
dc.contributor.otherUniversidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em Informática
dc.date.accessioned2016-02-25T20:14:14Z
dc.date.available2016-02-25T20:14:14Z
dc.date.issued2015
dc.identifier.urihttp://hdl.handle.net/1884/41184
dc.descriptionOrientador : Prof. Dr. Daniel Weingaertner
dc.descriptionDissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 27/08/2015
dc.descriptionInclui referências : f. 86-90
dc.description.abstractResumo: Este trabalho apresenta uma proposta de paralelização do Método de Lattice Boltzmann em três dimensões para o framework waLBerla utilizando a plataforma de computação paralela Compute Unified Device Architecture (CUDA). Com esse propósito, foi desenvolvido um novo modulo para o framework waLBerla que permite que as simulações de fluidos já realizados pelo framework usando CPUs, sejam realizadas também em GPU. Esse modulo foi denominado de modulo CUDA e é composto por um conjunto de novas classes e métodos O modulo foi desenvolvido com base nos conceitos já definidos pelo framework waLBerla, dessa maneira a opção por realizar a simulação em CPU ou GPU e acessível para o usuário. Para validação do modulo foi utilizado o caso de testes conhecido como lid-driven cavity em conjunto com o operador de colisão Single Relaxation Time (SRT) e com o stencil D3Q19. Além do desenvolvimento do modulo CUDA, esse trabalho também levou em conta o desempenho das simulações utilizando memoria alocada de maneira linear e alinhada e também analisou diferentes tamanhos de domínio, com a finalidade de definir um critério para aloca.ao eficiente de grids de blocos de threads para a GPU. Também foram realizadas comparações entre diferentes arquiteturas de GPUs NVIDIA como, Fermi, Kepler e Maxwell. Os resultados obtidos pelo modulo CUDA estão de acordo com os valores encontrados na literatura. A GPU que obteve o maior desempenho foi a NVIDIA Tesla K40m, alcançando ate 612 MLUPS usando precisão dupla para um tamanho de domínio de 256x256x256 células, atingindo resultados bem expressivos se comparado as demais GPUs. Palavras-chave: Método de Lattice Boltzmann, D3Q19, waLBerla, CUDA, GPU, Liddriven cavity, SRT.
dc.description.abstractAbstract: A parallelization approach of Lattice Boltzmann method in three dimensions for the waLBerla framework using the Compute Unified Device Architecture (CUDA) is present in this work. A new module for the waLBerla framework is developed, allowing the fluid simulations already carried out by the framework using CPUs, are also held in GPU. This module is called CUDA module and consists of a set of new classes and methods. The CUDA module is based on the concepts already defined for waLBerla framework. This way, the option to perform the simulation in the CPU or in the GPU is straightforward to the user. To validate the module, we used the lid-driven cavity problem with the SRT collision operator and D3Q19 stencil. Additionally, we compared the simulations' performance using linear memory and pitched memory. Moreover, different sizes of domain were analysed. In this work, we realized comparations between different GPUs architectures like Fermi, Kepler and Maxwell. The achieved results for the CUDA module are according related works. The GPU had better performance was a NVIDIA Tesla K40m reaches up to 612 MLUPS in double precision for a domian size of 256x256x256 cells, achieving expressive values if compared of the others GPUs. Keywords: Lattice Boltzmann Method, D3Q19, waLBerla, CUDA, GPU, Lid-driven cavity, SRT.
dc.format.extent90 f. : il. algumas color.
dc.format.mimetypeapplication/pdf
dc.languagePortuguês
dc.relationDisponível em formato digital
dc.subjectCiência da computação
dc.titleExtensão do framework waLBerla para uso de GPU em simulações do Método de Lattice Boltzmann
dc.typeDissertação


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record