Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos

Detalhes bibliográficos
Autor(a) principal: CHAVES JUNIOR, Cicero Vitor
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPE
Texto Completo: https://repositorio.ufpe.br/handle/123456789/40026
Resumo: Simulações de elementos finitos com o uso de modelos em larga escala estão se tornando mais frequentes. Entre esses problemas temos a simulação de sismos em barragens e a simu- lação geomecânica de reservatórios de petróleo. Estratégias modernas aplicadas a problemas transitórios aproveitam a montagem eficiente de matrizes globais, bem como a solução rápida de sistemas de equações em modelos com dezenas de milhões de graus de liberdade. O uso da computação de uso geral em unidades de processamento gráfico (GPGPU) permite extrema paralelização e aceleração desses processos. Nesta direção, o presente trabalho apresenta várias aplicações de problemas de mecânica computacional usando a linguagem de programação C ++ acoplada ao NVCC (NVIDIA CUDA Compiler) para a plataforma CUDA. Essas simulações requerem apenas funções nativas do C ++, sem dependências externas. O código foi desenvol- vido em uma estrutura modular, com a implementação híbrida de sub-rotinas em CPU e GPU (Graphical Processing Units). Um solucionador iterativo com o método de gradiente conjugado é apresentado e pode ser acoplado a códigos desenvolvidos em outras linguagens de programação para soluções GPU dedicadas. Duas formas de integração direta são apresentadas para a evolução no tempo. Vários benchmarks são discutidos, incluindo o uso do OpenMP para computação paralela e cálculos na GPU de precisão dupla e única, além de diferentes núcleos de GPU para multiplicação esparsa de vetores matriciais (SpMV). Os resultados obtidos usando as estratégias propostas revelam que os cálculos usando as rotinas descritas são eficazes e fornecem acelerações significativas em relação aos cálculos de thread único.
id UFPE_f65ecbf4e0735de3cfdeba72f7890ef3
oai_identifier_str oai:repositorio.ufpe.br:123456789/40026
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str 2221
spelling CHAVES JUNIOR, Cicero Vitorhttp://lattes.cnpq.br/7864873190675001http://lattes.cnpq.br/0171120821110850RIBEIRO, Paulo Marcelo Vieira2021-04-30T13:22:42Z2021-04-30T13:22:42Z2020-02-19CHAVES JUNIOR, Cicero Vitor. Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos. 2020. Dissertação (Mestrado em Engenharia Civil)- Universidade Federal de Pernambuco, Recife, 2020.https://repositorio.ufpe.br/handle/123456789/40026Simulações de elementos finitos com o uso de modelos em larga escala estão se tornando mais frequentes. Entre esses problemas temos a simulação de sismos em barragens e a simu- lação geomecânica de reservatórios de petróleo. Estratégias modernas aplicadas a problemas transitórios aproveitam a montagem eficiente de matrizes globais, bem como a solução rápida de sistemas de equações em modelos com dezenas de milhões de graus de liberdade. O uso da computação de uso geral em unidades de processamento gráfico (GPGPU) permite extrema paralelização e aceleração desses processos. Nesta direção, o presente trabalho apresenta várias aplicações de problemas de mecânica computacional usando a linguagem de programação C ++ acoplada ao NVCC (NVIDIA CUDA Compiler) para a plataforma CUDA. Essas simulações requerem apenas funções nativas do C ++, sem dependências externas. O código foi desenvol- vido em uma estrutura modular, com a implementação híbrida de sub-rotinas em CPU e GPU (Graphical Processing Units). Um solucionador iterativo com o método de gradiente conjugado é apresentado e pode ser acoplado a códigos desenvolvidos em outras linguagens de programação para soluções GPU dedicadas. Duas formas de integração direta são apresentadas para a evolução no tempo. Vários benchmarks são discutidos, incluindo o uso do OpenMP para computação paralela e cálculos na GPU de precisão dupla e única, além de diferentes núcleos de GPU para multiplicação esparsa de vetores matriciais (SpMV). Os resultados obtidos usando as estratégias propostas revelam que os cálculos usando as rotinas descritas são eficazes e fornecem acelerações significativas em relação aos cálculos de thread único.Finite element simulations with the use of large scale models are becoming more frequent. These problems include simulation of earthquakes in dams and geomechanical simulation of petroleum reservoirs. Modern strategies applied to transient problems seize efficient assembly of global matrices as well as the fast solution of system of equations in models with hundreds of millions of degrees of freedom. The use of General-Purpose computing on Graphics Processing Units (GPGPU) enables extreme parallelization and acceleration of these processes. In this direction, the present work presents several applications of computational mechanics problems using the C ++ programming language coupled to the NVCC (NVIDIA CUDA Compiler) for the CUDA platform. These simulations require only native C ++ functions, without external dependencies. The code was developed in a modular structure, with the hybrid implementation of subroutines in CPU and Graphical Processing Units (GPU). An iterative solver with the conjugate gradient method is presented and can be coupled to codes developed in other program- ming languages for dedicated GPU solution. Two forms of direct integration are presented for evolution over time. Several benchmarks are discussed, including the use of OpenMP for parallel computing and computations on the GPU using double and single precision accuracy, as well as different GPU kernels for sparse matrix-vector multiplication (SpMV). Results obtained using the proposed strategies reveal that computations using the described routines are effective and provide significant speedups over single-threaded computations.porUniversidade Federal de PernambucoPrograma de Pos Graduacao em Engenharia CivilUFPEBrasilAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessEngenharia CivilElementos finitosComputação paralelaGPGPUCUDASimulação dinâmicaAceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porososinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesismestradoreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPEORIGINALDISSERTAÇÃO Cicero Vitor Chaves Junior.pdfDISSERTAÇÃO Cicero Vitor Chaves Junior.pdfapplication/pdf2709351https://repositorio.ufpe.br/bitstream/123456789/40026/1/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf9e749c0490652f6c0e5c3cc061f798c9MD51CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufpe.br/bitstream/123456789/40026/2/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD52LICENSElicense.txtlicense.txttext/plain; charset=utf-82310https://repositorio.ufpe.br/bitstream/123456789/40026/3/license.txtbd573a5ca8288eb7272482765f819534MD53TEXTDISSERTAÇÃO Cicero Vitor Chaves Junior.pdf.txtDISSERTAÇÃO Cicero Vitor Chaves Junior.pdf.txtExtracted texttext/plain146985https://repositorio.ufpe.br/bitstream/123456789/40026/4/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf.txte588ea0c31422c32bfe121aee31f0c68MD54THUMBNAILDISSERTAÇÃO Cicero Vitor Chaves Junior.pdf.jpgDISSERTAÇÃO Cicero Vitor Chaves Junior.pdf.jpgGenerated Thumbnailimage/jpeg1318https://repositorio.ufpe.br/bitstream/123456789/40026/5/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf.jpg8856a5a924587f02a7159d814c96e4dbMD55123456789/400262021-05-01 02:15:34.279oai:repositorio.ufpe.br:123456789/40026TGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKClRvZG8gZGVwb3NpdGFudGUgZGUgbWF0ZXJpYWwgbm8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgKFJJKSBkZXZlIGNvbmNlZGVyLCDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBQZXJuYW1idWNvIChVRlBFKSwgdW1hIExpY2Vuw6dhIGRlIERpc3RyaWJ1acOnw6NvIE7Do28gRXhjbHVzaXZhIHBhcmEgbWFudGVyIGUgdG9ybmFyIGFjZXNzw612ZWlzIG9zIHNldXMgZG9jdW1lbnRvcywgZW0gZm9ybWF0byBkaWdpdGFsLCBuZXN0ZSByZXBvc2l0w7NyaW8uCgpDb20gYSBjb25jZXNzw6NvIGRlc3RhIGxpY2Vuw6dhIG7Do28gZXhjbHVzaXZhLCBvIGRlcG9zaXRhbnRlIG1hbnTDqW0gdG9kb3Mgb3MgZGlyZWl0b3MgZGUgYXV0b3IuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKTGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKCkFvIGNvbmNvcmRhciBjb20gZXN0YSBsaWNlbsOnYSBlIGFjZWl0w6EtbGEsIHZvY8OqIChhdXRvciBvdSBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMpOgoKYSkgRGVjbGFyYSBxdWUgY29uaGVjZSBhIHBvbMOtdGljYSBkZSBjb3B5cmlnaHQgZGEgZWRpdG9yYSBkbyBzZXUgZG9jdW1lbnRvOwpiKSBEZWNsYXJhIHF1ZSBjb25oZWNlIGUgYWNlaXRhIGFzIERpcmV0cml6ZXMgcGFyYSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGUEU7CmMpIENvbmNlZGUgw6AgVUZQRSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZGUgYXJxdWl2YXIsIHJlcHJvZHV6aXIsIGNvbnZlcnRlciAoY29tbyBkZWZpbmlkbyBhIHNlZ3VpciksIGNvbXVuaWNhciBlL291IGRpc3RyaWJ1aXIsIG5vIFJJLCBvIGRvY3VtZW50byBlbnRyZWd1ZSAoaW5jbHVpbmRvIG8gcmVzdW1vL2Fic3RyYWN0KSBlbSBmb3JtYXRvIGRpZ2l0YWwgb3UgcG9yIG91dHJvIG1laW87CmQpIERlY2xhcmEgcXVlIGF1dG9yaXphIGEgVUZQRSBhIGFycXVpdmFyIG1haXMgZGUgdW1hIGPDs3BpYSBkZXN0ZSBkb2N1bWVudG8gZSBjb252ZXJ0w6otbG8sIHNlbSBhbHRlcmFyIG8gc2V1IGNvbnRlw7pkbywgcGFyYSBxdWFscXVlciBmb3JtYXRvIGRlIGZpY2hlaXJvLCBtZWlvIG91IHN1cG9ydGUsIHBhcmEgZWZlaXRvcyBkZSBzZWd1cmFuw6dhLCBwcmVzZXJ2YcOnw6NvIChiYWNrdXApIGUgYWNlc3NvOwplKSBEZWNsYXJhIHF1ZSBvIGRvY3VtZW50byBzdWJtZXRpZG8gw6kgbyBzZXUgdHJhYmFsaG8gb3JpZ2luYWwgZSBxdWUgZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBhIHRlcmNlaXJvcyBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2Ugb3MgZGlyZWl0b3MgZGUgb3V0cmEgcGVzc29hIG91IGVudGlkYWRlOwpmKSBEZWNsYXJhIHF1ZSwgbm8gY2FzbyBkbyBkb2N1bWVudG8gc3VibWV0aWRvIGNvbnRlciBtYXRlcmlhbCBkbyBxdWFsIG7Do28gZGV0w6ltIG9zIGRpcmVpdG9zIGRlCmF1dG9yLCBvYnRldmUgYSBhdXRvcml6YcOnw6NvIGlycmVzdHJpdGEgZG8gcmVzcGVjdGl2byBkZXRlbnRvciBkZXNzZXMgZGlyZWl0b3MgcGFyYSBjZWRlciDDoApVRlBFIG9zIGRpcmVpdG9zIHJlcXVlcmlkb3MgcG9yIGVzdGEgTGljZW7Dp2EgZSBhdXRvcml6YXIgYSB1bml2ZXJzaWRhZGUgYSB1dGlsaXrDoS1sb3MgbGVnYWxtZW50ZS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBlc3NlIG1hdGVyaWFsIGN1am9zIGRpcmVpdG9zIHPDo28gZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3UgY29udGXDumRvIGRvIGRvY3VtZW50byBlbnRyZWd1ZTsKZykgU2UgbyBkb2N1bWVudG8gZW50cmVndWUgw6kgYmFzZWFkbyBlbSB0cmFiYWxobyBmaW5hbmNpYWRvIG91IGFwb2lhZG8gcG9yIG91dHJhIGluc3RpdHVpw6fDo28gcXVlIG7Do28gYSBVRlBFLCBkZWNsYXJhIHF1ZSBjdW1wcml1IHF1YWlzcXVlciBvYnJpZ2HDp8O1ZXMgZXhpZ2lkYXMgcGVsbyByZXNwZWN0aXZvIGNvbnRyYXRvIG91IGFjb3Jkby4KCkEgVUZQRSBpZGVudGlmaWNhcsOhIGNsYXJhbWVudGUgbyhzKSBub21lKHMpIGRvKHMpIGF1dG9yIChlcykgZG9zIGRpcmVpdG9zIGRvIGRvY3VtZW50byBlbnRyZWd1ZSBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIHBhcmEgYWzDqW0gZG8gcHJldmlzdG8gbmEgYWzDrW5lYSBjKS4KRepositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212021-05-01T05:15:34Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
title Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
spellingShingle Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
CHAVES JUNIOR, Cicero Vitor
Engenharia Civil
Elementos finitos
Computação paralela
GPGPU
CUDA
Simulação dinâmica
title_short Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
title_full Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
title_fullStr Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
title_full_unstemmed Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
title_sort Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos
author CHAVES JUNIOR, Cicero Vitor
author_facet CHAVES JUNIOR, Cicero Vitor
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/7864873190675001
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/0171120821110850
dc.contributor.author.fl_str_mv CHAVES JUNIOR, Cicero Vitor
dc.contributor.advisor1.fl_str_mv RIBEIRO, Paulo Marcelo Vieira
contributor_str_mv RIBEIRO, Paulo Marcelo Vieira
dc.subject.por.fl_str_mv Engenharia Civil
Elementos finitos
Computação paralela
GPGPU
CUDA
Simulação dinâmica
topic Engenharia Civil
Elementos finitos
Computação paralela
GPGPU
CUDA
Simulação dinâmica
description Simulações de elementos finitos com o uso de modelos em larga escala estão se tornando mais frequentes. Entre esses problemas temos a simulação de sismos em barragens e a simu- lação geomecânica de reservatórios de petróleo. Estratégias modernas aplicadas a problemas transitórios aproveitam a montagem eficiente de matrizes globais, bem como a solução rápida de sistemas de equações em modelos com dezenas de milhões de graus de liberdade. O uso da computação de uso geral em unidades de processamento gráfico (GPGPU) permite extrema paralelização e aceleração desses processos. Nesta direção, o presente trabalho apresenta várias aplicações de problemas de mecânica computacional usando a linguagem de programação C ++ acoplada ao NVCC (NVIDIA CUDA Compiler) para a plataforma CUDA. Essas simulações requerem apenas funções nativas do C ++, sem dependências externas. O código foi desenvol- vido em uma estrutura modular, com a implementação híbrida de sub-rotinas em CPU e GPU (Graphical Processing Units). Um solucionador iterativo com o método de gradiente conjugado é apresentado e pode ser acoplado a códigos desenvolvidos em outras linguagens de programação para soluções GPU dedicadas. Duas formas de integração direta são apresentadas para a evolução no tempo. Vários benchmarks são discutidos, incluindo o uso do OpenMP para computação paralela e cálculos na GPU de precisão dupla e única, além de diferentes núcleos de GPU para multiplicação esparsa de vetores matriciais (SpMV). Os resultados obtidos usando as estratégias propostas revelam que os cálculos usando as rotinas descritas são eficazes e fornecem acelerações significativas em relação aos cálculos de thread único.
publishDate 2020
dc.date.issued.fl_str_mv 2020-02-19
dc.date.accessioned.fl_str_mv 2021-04-30T13:22:42Z
dc.date.available.fl_str_mv 2021-04-30T13:22:42Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv CHAVES JUNIOR, Cicero Vitor. Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos. 2020. Dissertação (Mestrado em Engenharia Civil)- Universidade Federal de Pernambuco, Recife, 2020.
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/40026
identifier_str_mv CHAVES JUNIOR, Cicero Vitor. Aceleração de simulações computacionais em problemas de dinâmica estrutural e de escoamento em meios porosos. 2020. Dissertação (Mestrado em Engenharia Civil)- Universidade Federal de Pernambuco, Recife, 2020.
url https://repositorio.ufpe.br/handle/123456789/40026
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.publisher.program.fl_str_mv Programa de Pos Graduacao em Engenharia Civil
dc.publisher.initials.fl_str_mv UFPE
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
bitstream.url.fl_str_mv https://repositorio.ufpe.br/bitstream/123456789/40026/1/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf
https://repositorio.ufpe.br/bitstream/123456789/40026/2/license_rdf
https://repositorio.ufpe.br/bitstream/123456789/40026/3/license.txt
https://repositorio.ufpe.br/bitstream/123456789/40026/4/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf.txt
https://repositorio.ufpe.br/bitstream/123456789/40026/5/DISSERTA%c3%87%c3%83O%20Cicero%20Vitor%20Chaves%20Junior.pdf.jpg
bitstream.checksum.fl_str_mv 9e749c0490652f6c0e5c3cc061f798c9
e39d27027a6cc9cb039ad269a5db8e34
bd573a5ca8288eb7272482765f819534
e588ea0c31422c32bfe121aee31f0c68
8856a5a924587f02a7159d814c96e4db
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1802310822822674432