Programação paralela do método dos elementos de contorno

Detalhes bibliográficos
Autor(a) principal: Miura Junior, Inácio
Data de Publicação: 2020
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Biblioteca Digital de Monografias da UnB
Texto Completo: https://bdm.unb.br/handle/10483/28997
Resumo: Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2020.
id UNB-2_6fd3f5c6abf88f67cbb54e8831589c41
oai_identifier_str oai:bdm.unb.br:10483/28997
network_acronym_str UNB-2
network_name_str Biblioteca Digital de Monografias da UnB
repository_id_str 11571
spelling Miura Junior, InácioAlbuquerque, Éder Lima deMIURA JÚNIOR, Inácio. Programação paralela do método dos elementos de contorno. 2020. 104 f., il.Trabalho de Conclusão de Curso (Bacharelado em Engenharia Mecânica)—Universidade de Brasília, Brasília, 2020.https://bdm.unb.br/handle/10483/28997Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2020.O presente trabalho explora técnicas de programação de alto desempenho para aperfeiçoar um código de método dos elementos de contorno (MEC). Serão discutidas as vantagens da implementação da programação em paralelo, passando por uma revisão teórica sobre vetorização, multi-threading e programação paralela em clusters. A implementação do MEC foi escrita em Python devido a facilidade de programação que reduz o tempo gasto na etapa de desenvolvimento. Serão avaliadas as partes que mais consomem tempo de processamento para uma otimização utilizando a biblioteca Cython, que transforma trechos do programa em extensões em C. Foi explorado o uso de Softwares livres, Open Source, para soluções de geração de CAD (FreeCad, Designspark Mechanical), geração de malha (GMSH), leitura e conversão de malha (Meshio), visualização e pós-processamento (ParaView). Por fim, foi analisado o impacto da implementação de paralelismo, com memória compartilhada, em um dos trechos críticos da rotina de cálculo e foram discutidos os aspectos práticos e dificuldades técnicas, deste método, com o intuito de fomentar o uso de novas práticas mais eficientes de programação. A paralelização da rotina de integração, existente no código, aumentou a velocidade por um fator igual ao número de processadores utilizados.Submitted by Jaedna Lins (jaednalins@bce.unb.br) on 2021-10-20T00:08:32Z No. of bitstreams: 1 2020_InacioMiuraJunior_tcc.pdf: 3211657 bytes, checksum: f8caa7f2a19b2d420410ffcf3ac992b5 (MD5)Approved for entry into archive by Luanna Maia (luanna@bce.unb.br) on 2021-10-21T13:29:17Z (GMT) No. of bitstreams: 1 2020_InacioMiuraJunior_tcc.pdf: 3211657 bytes, checksum: f8caa7f2a19b2d420410ffcf3ac992b5 (MD5)Made available in DSpace on 2021-10-21T13:29:17Z (GMT). No. of bitstreams: 1 2020_InacioMiuraJunior_tcc.pdf: 3211657 bytes, checksum: f8caa7f2a19b2d420410ffcf3ac992b5 (MD5)The present work explore high performance programming techniques to enhance a boundary element method (BEM) code. It was discussed the advantages of implementing parallel programming, throughout the concept of vectorization, multi-threading and parallel programming on clusters. The BEM implementation has been written in Python due to the ease of programming that reduces the time spent in the development stage. The most time consuming parts will be evaluated for a optimization utilizing the Cython library, that turns program snippets into C extensions. Free Open Source Softwares will be explored for solutions of CAD generation (FreeCad, Designspark Mechanical), Mesh generation (GMSH), Mesh reading and conversion (Meshio), visualization and post processing (ParaView).Finally, it was analised the impact of a parallel implementation, with shared memory, on a critical section of the calculation routine and it was discussed the practical aspects and technical dificulties of such method, with the intention of fomenting the use of new and more efficient programming practices. The paralelization of the integration routine, that exist in the code, enhanced the speed by a factor equal to the number of processors utilized.A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.info:eu-repo/semantics/openAccessLinguagem de programação (Computadores)Software gratuitoPython (Linguagem de programação de computador)Programação paralela do método dos elementos de contornoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis2021-10-21T13:29:17Z2021-10-21T13:29:17Z2020-12-18porreponame:Biblioteca Digital de Monografias da UnBinstname:Universidade de Brasília (UnB)instacron:UNBLICENSElicense.txtlicense.txttext/plain1817http://bdm.unb.br/xmlui/bitstream/10483/28997/2/license.txt21554873e56ad8ddc69c092699b98f95MD52ORIGINAL2020_InacioMiuraJunior_tcc.pdf2020_InacioMiuraJunior_tcc.pdfapplication/pdf3211657http://bdm.unb.br/xmlui/bitstream/10483/28997/1/2020_InacioMiuraJunior_tcc.pdff8caa7f2a19b2d420410ffcf3ac992b5MD5110483/289972021-10-21 10:29:17.753oai:bdm.unb.br:10483/28997w4kgbmVjZXNzw6FyaW8gY29uY29yZGFyIGNvbSBhIGxpY2Vuw6dhIGRlIGRpc3RyaWJ1acOnw6NvIG7Do28tZXhjbHVzaXZhLAphbnRlcyBxdWUgbyBkb2N1bWVudG8gcG9zc2EgYXBhcmVjZXIgbmEgQmlibGlvdGVjYSBEaWdpdGFsIGRhIFByb2R1w6fDo28gCkRpc2NlbnRlIGRhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEuIFBvciBmYXZvciwgbGVpYSBhCmxpY2Vuw6dhIGF0ZW50YW1lbnRlLiBDYXNvIG5lY2Vzc2l0ZSBkZSBhbGd1bSBlc2NsYXJlY2ltZW50byBlbnRyZSBlbQpjb250YXRvIGF0cmF2w6lzIGRlOiBiZG1AYmNlLnVuYi5iciBvdSAzMTA3LTI2ODcuCgpMSUNFTsOHQSBERSBESVNUUklCVUnDh8ODTyBOw4NPLUVYQ0xVU0lWQQoKQW8gYXNzaW5hciBlIGVudHJlZ2FyIGVzdGEgbGljZW7Dp2EsIG8vYSBTci4vU3JhLiAoYXV0b3Igb3UgZGV0ZW50b3IgZG9zCmRpcmVpdG9zIGRlIGF1dG9yKToKCmEpIENvbmNlZGUgw6AgVW5pdmVyc2lkYWRlIGRlIEJyYXPDrWxpYSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUKcmVwcm9kdXppciwgY29udmVydGVyIChjb21vIGRlZmluaWRvIGFiYWl4byksIGNvbXVuaWNhciBlL291CmRpc3RyaWJ1aXIgbyBkb2N1bWVudG8gZW50cmVndWUgKGluY2x1aW5kbyBvIHJlc3Vtby9hYnN0cmFjdCkgZW0KZm9ybWF0byBkaWdpdGFsIG91IGltcHJlc3NvIGUgZW0gcXVhbHF1ZXIgbWVpby4KCmIpIERlY2xhcmEgcXVlIG8gZG9jdW1lbnRvIGVudHJlZ3VlIMOpIHNldSB0cmFiYWxobyBvcmlnaW5hbCwgZSBxdWUKZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYQp0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2UsIHRhbnRvIHF1YW50byBsaGUgw6kKcG9zc8OtdmVsIHNhYmVyLCBvcyBkaXJlaXRvcyBkZSBxdWFscXVlciBvdXRyYSBwZXNzb2Egb3UgZW50aWRhZGUuCgpjKSBTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSBjb250w6ltIG1hdGVyaWFsIGRvIHF1YWwgbsOjbyBkZXTDqW0gb3MKZGlyZWl0b3MgZGUgYXV0b3IsIGRlY2xhcmEgcXVlIG9idGV2ZSBhdXRvcml6YcOnw6NvIGRvIGRldGVudG9yIGRvcwpkaXJlaXRvcyBkZSBhdXRvciBwYXJhIGNvbmNlZGVyIMOgIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEgb3MgZGlyZWl0b3MKcmVxdWVyaWRvcyBwb3IgZXN0YSBsaWNlbsOnYSwgZSBxdWUgZXNzZSBtYXRlcmlhbCBjdWpvcyBkaXJlaXRvcyBzw6NvIGRlCnRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvIG91CmNvbnRlw7pkbyBkbyBkb2N1bWVudG8gZW50cmVndWUuCgpTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSDDqSBiYXNlYWRvIGVtIHRyYWJhbGhvIGZpbmFuY2lhZG8gb3UgYXBvaWFkbwpwb3Igb3V0cmEgaW5zdGl0dWnDp8OjbyBxdWUgbsOjbyBhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEsIGRlY2xhcmEgcXVlCmN1bXByaXUgcXVhaXNxdWVyIG9icmlnYcOnw7VlcyBleGlnaWRhcyBwZWxvIHJlc3BlY3Rpdm8gY29udHJhdG8gb3UKYWNvcmRvLgoKQSBVbml2ZXJzaWRhZGUgZGUgQnJhc8OtbGlhIGlkZW50aWZpY2Fyw6EgY2xhcmFtZW50ZSBvKHMpIHNldSAocykgbm9tZSAocykKY29tbyBvIChzKSBhdXRvciAoZXMpIG91IGRldGVudG9yIChlcykgZG9zIGRpcmVpdG9zIGRvIGRvY3VtZW50bwplbnRyZWd1ZSwgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBwYXJhIGFsw6ltIGRhcyBwZXJtaXRpZGFzIHBvcgplc3RhIGxpY2Vuw6dhLgo=Biblioteca Digital de Monografiahttps://bdm.unb.br/PUBhttp://bdm.unb.br/oai/requestbdm@bce.unb.br||patricia@bce.unb.bropendoar:115712021-10-21T13:29:17Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)false
dc.title.pt_BR.fl_str_mv Programação paralela do método dos elementos de contorno
title Programação paralela do método dos elementos de contorno
spellingShingle Programação paralela do método dos elementos de contorno
Miura Junior, Inácio
Linguagem de programação (Computadores)
Software gratuito
Python (Linguagem de programação de computador)
title_short Programação paralela do método dos elementos de contorno
title_full Programação paralela do método dos elementos de contorno
title_fullStr Programação paralela do método dos elementos de contorno
title_full_unstemmed Programação paralela do método dos elementos de contorno
title_sort Programação paralela do método dos elementos de contorno
author Miura Junior, Inácio
author_facet Miura Junior, Inácio
author_role author
dc.contributor.author.fl_str_mv Miura Junior, Inácio
dc.contributor.advisor1.fl_str_mv Albuquerque, Éder Lima de
contributor_str_mv Albuquerque, Éder Lima de
dc.subject.keyword.pt_BR.fl_str_mv Linguagem de programação (Computadores)
Software gratuito
Python (Linguagem de programação de computador)
topic Linguagem de programação (Computadores)
Software gratuito
Python (Linguagem de programação de computador)
description Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2020.
publishDate 2020
dc.date.submitted.none.fl_str_mv 2020-12-18
dc.date.accessioned.fl_str_mv 2021-10-21T13:29:17Z
dc.date.available.fl_str_mv 2021-10-21T13:29:17Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv MIURA JÚNIOR, Inácio. Programação paralela do método dos elementos de contorno. 2020. 104 f., il.Trabalho de Conclusão de Curso (Bacharelado em Engenharia Mecânica)—Universidade de Brasília, Brasília, 2020.
dc.identifier.uri.fl_str_mv https://bdm.unb.br/handle/10483/28997
identifier_str_mv MIURA JÚNIOR, Inácio. Programação paralela do método dos elementos de contorno. 2020. 104 f., il.Trabalho de Conclusão de Curso (Bacharelado em Engenharia Mecânica)—Universidade de Brasília, Brasília, 2020.
url https://bdm.unb.br/handle/10483/28997
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Monografias da UnB
instname:Universidade de Brasília (UnB)
instacron:UNB
instname_str Universidade de Brasília (UnB)
instacron_str UNB
institution UNB
reponame_str Biblioteca Digital de Monografias da UnB
collection Biblioteca Digital de Monografias da UnB
bitstream.url.fl_str_mv http://bdm.unb.br/xmlui/bitstream/10483/28997/2/license.txt
http://bdm.unb.br/xmlui/bitstream/10483/28997/1/2020_InacioMiuraJunior_tcc.pdf
bitstream.checksum.fl_str_mv 21554873e56ad8ddc69c092699b98f95
f8caa7f2a19b2d420410ffcf3ac992b5
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)
repository.mail.fl_str_mv bdm@bce.unb.br||patricia@bce.unb.br
_version_ 1801493161699180544