Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI

Detalhes bibliográficos
Autor(a) principal: Lorenzon, Arthur Francisco
Data de Publicação: 2013
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UNIPAMPA
Texto Completo: http://dspace.unipampa.edu.br/jspui/handle/riu/1566
Resumo: O MPI é o padrão amplamente utilizado no desenvolvimento de programas paralelos para ambientes de memória distribuída. Ele é dividido em duas normas: MPI-1 e MPI-2. A primeira caracteriza-se por criar processos estaticamente, no início da execução da aplicação, enquanto que na segunda, a criação de processos ocorre de forma dinâmica, ou seja, em tempo de execução. Entretanto, criar processos dinamicamente gera um custo extra para a aplicação, quando comparado com a criação estática. Este trabalho realiza um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos, que objetiva investigar o impacto deste sobre-custo em aplicações MPI-2 e como ele pode ser contornado através do uso de técnicas de programação eficientes e características avançadas fornecidas pelo próprio MPI. Para isto, foram implementadas aplicações em MPI-1 e MPI-2, sob dois problemas (Jogo da Vida e Skyline Matrix Solver) da suíte Cowichan Problems. Nossa primeira análise, realizada sobre o Jogo da Vida, foi possível encontrar o custo extra da criação dinâmica de processos em aplicações com carga regular de trabalho e cujo tempo de computação é similar entre os processos. Já a segunda análise efetuada sobre o Skyline Matrix Solver possibilitou analisar o impacto da criação de processos em tempo de execução nas aplicações que possuem carga de trabalho irregular e tempo de computação diferente entre os processos. Nossos resultados mostram que para aplicações com carga de trabalho regular e com pouco tempo útil de computação (similares ao Jogo da Vida), no melhor dos casos, a inserção da criação dinâmica de processos impactou em apenas 0, 2% no tempo total da aplicação. Já para aplicações com carga de trabalho irregular e com tempo consideravelmente útil de computação (similares ao Skyline Matrix Solver), mostramos que é possível obter ganho com a criação dinâmica de processos, em que no melhor dos casos, a implementação com MPI-2 foi 6% mais eficiente que a implementação MPI-1.
id UNIP_0be67bbcff4df8a566d344268fb7bcbe
oai_identifier_str oai:repositorio.unipampa.edu.br:riu/1566
network_acronym_str UNIP
network_name_str Repositório Institucional da UNIPAMPA
repository_id_str
spelling Cera, Márcia CristinaRossi, Fábio DinizLorenzon, Arthur Francisco2017-06-05T16:01:19Z2017-06-05T16:01:19Z2013-03-04http://dspace.unipampa.edu.br/jspui/handle/riu/1566O MPI é o padrão amplamente utilizado no desenvolvimento de programas paralelos para ambientes de memória distribuída. Ele é dividido em duas normas: MPI-1 e MPI-2. A primeira caracteriza-se por criar processos estaticamente, no início da execução da aplicação, enquanto que na segunda, a criação de processos ocorre de forma dinâmica, ou seja, em tempo de execução. Entretanto, criar processos dinamicamente gera um custo extra para a aplicação, quando comparado com a criação estática. Este trabalho realiza um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos, que objetiva investigar o impacto deste sobre-custo em aplicações MPI-2 e como ele pode ser contornado através do uso de técnicas de programação eficientes e características avançadas fornecidas pelo próprio MPI. Para isto, foram implementadas aplicações em MPI-1 e MPI-2, sob dois problemas (Jogo da Vida e Skyline Matrix Solver) da suíte Cowichan Problems. Nossa primeira análise, realizada sobre o Jogo da Vida, foi possível encontrar o custo extra da criação dinâmica de processos em aplicações com carga regular de trabalho e cujo tempo de computação é similar entre os processos. Já a segunda análise efetuada sobre o Skyline Matrix Solver possibilitou analisar o impacto da criação de processos em tempo de execução nas aplicações que possuem carga de trabalho irregular e tempo de computação diferente entre os processos. Nossos resultados mostram que para aplicações com carga de trabalho regular e com pouco tempo útil de computação (similares ao Jogo da Vida), no melhor dos casos, a inserção da criação dinâmica de processos impactou em apenas 0, 2% no tempo total da aplicação. Já para aplicações com carga de trabalho irregular e com tempo consideravelmente útil de computação (similares ao Skyline Matrix Solver), mostramos que é possível obter ganho com a criação dinâmica de processos, em que no melhor dos casos, a implementação com MPI-2 foi 6% mais eficiente que a implementação MPI-1.The MPI standard is widely used in the development of parallel programs for distributed memory environments. It is divided into two standards: MPI-1 and MPI-2. The first is characterized by creating processes statically at the start of execution of the application, while in the second the creation of a process takes place dynamically, ie at runtime. However, processes create dynamically generates an extra cost to implement, when compared with static setting. This paper makes a study on the development of applications with dynamic creation of processes, which aims to investigate the impact of this overhead in MPI-2 applications and how it can be bypassed through the use of efficient programming techniques and advanced features provided by the MPI. For this, applications have been implemented with MPI-1 and MPI-2, under two problems (Game of Life and Skyline Matrix Solver) of the suite Cowichan Problems. Our first analysis performed on the Game of Life, it was possible to find the overhead of the dynamic creation of processes in applications with regular workload and whose computation time is similar in both cases. The second analysis performed on the Skyline Matrix Solver possible to analyze the impact of process creation at runtime in applications that have irregular workload and different computation time between processes. Our results show that for applications with regular workload and with little computing time (similar to the Game of Life), at best, the inclusion of dynamic creation of processes impacted by just 0, 2% in the total time of application. For applications with irregular work load considerably useful and time of computation (similar to Skyline Matrix Solver), we show that it is possible to succeed with the creation of dynamic processes, wherein at best, with the implementation of MPI-2 was 6% more efficient than the MPI-1 implementation version.porUniversidade Federal do PampaCampus AlegreteAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessCNPQ::CIENCIAS EXATAS E DA TERRAComputer scienceMessage-Passing InterfaceParallel programmingCiência da computaçãoProgramação paralelaMessage-Passing InterfaceUm estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPIinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfreponame:Repositório Institucional da UNIPAMPAinstname:Universidade Federal do Pampa (UNIPAMPA)instacron:UNIPAMPAORIGINALUm estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI.pdfUm estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI.pdfapplication/pdf2641267https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/1/Um%20estudo%20sobre%20o%20desenvolvimento%20de%20aplica%c3%a7%c3%b5es%20com%20cria%c3%a7%c3%a3o%20din%c3%a2mica%20de%20processos%20em%20MPI.pdf91573cfe966d655b519c0957d645fc53MD51CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81232https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/2/license_rdf66e71c371cc565284e70f40736c94386MD52LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/3/license.txt8a4605be74aa9ea9d79846c1fba20a33MD53TEXTUm estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI.pdf.txtUm estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI.pdf.txtExtracted texttext/plain196508https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/4/Um%20estudo%20sobre%20o%20desenvolvimento%20de%20aplica%c3%a7%c3%b5es%20com%20cria%c3%a7%c3%a3o%20din%c3%a2mica%20de%20processos%20em%20MPI.pdf.txt45705d2b199fc1c5831f29bc60dc1ec9MD54riu/15662021-04-12 15:38:31.552oai:repositorio.unipampa.edu.br:riu/1566Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttp://dspace.unipampa.edu.br:8080/oai/requestsisbi@unipampa.edu.bropendoar:2021-04-12T18:38:31Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA)false
dc.title.pt_BR.fl_str_mv Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
title Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
spellingShingle Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
Lorenzon, Arthur Francisco
CNPQ::CIENCIAS EXATAS E DA TERRA
Computer science
Message-Passing Interface
Parallel programming
Ciência da computação
Programação paralela
Message-Passing Interface
title_short Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
title_full Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
title_fullStr Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
title_full_unstemmed Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
title_sort Um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos em MPI
author Lorenzon, Arthur Francisco
author_facet Lorenzon, Arthur Francisco
author_role author
dc.contributor.co-advisor.none.fl_str_mv Rossi, Fábio Diniz
dc.contributor.advisor1.fl_str_mv Cera, Márcia Cristina
dc.contributor.author.fl_str_mv Lorenzon, Arthur Francisco
contributor_str_mv Cera, Márcia Cristina
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA
topic CNPQ::CIENCIAS EXATAS E DA TERRA
Computer science
Message-Passing Interface
Parallel programming
Ciência da computação
Programação paralela
Message-Passing Interface
dc.subject.eng.fl_str_mv Computer science
Message-Passing Interface
Parallel programming
dc.subject.por.fl_str_mv Ciência da computação
Programação paralela
Message-Passing Interface
description O MPI é o padrão amplamente utilizado no desenvolvimento de programas paralelos para ambientes de memória distribuída. Ele é dividido em duas normas: MPI-1 e MPI-2. A primeira caracteriza-se por criar processos estaticamente, no início da execução da aplicação, enquanto que na segunda, a criação de processos ocorre de forma dinâmica, ou seja, em tempo de execução. Entretanto, criar processos dinamicamente gera um custo extra para a aplicação, quando comparado com a criação estática. Este trabalho realiza um estudo sobre o desenvolvimento de aplicações com criação dinâmica de processos, que objetiva investigar o impacto deste sobre-custo em aplicações MPI-2 e como ele pode ser contornado através do uso de técnicas de programação eficientes e características avançadas fornecidas pelo próprio MPI. Para isto, foram implementadas aplicações em MPI-1 e MPI-2, sob dois problemas (Jogo da Vida e Skyline Matrix Solver) da suíte Cowichan Problems. Nossa primeira análise, realizada sobre o Jogo da Vida, foi possível encontrar o custo extra da criação dinâmica de processos em aplicações com carga regular de trabalho e cujo tempo de computação é similar entre os processos. Já a segunda análise efetuada sobre o Skyline Matrix Solver possibilitou analisar o impacto da criação de processos em tempo de execução nas aplicações que possuem carga de trabalho irregular e tempo de computação diferente entre os processos. Nossos resultados mostram que para aplicações com carga de trabalho regular e com pouco tempo útil de computação (similares ao Jogo da Vida), no melhor dos casos, a inserção da criação dinâmica de processos impactou em apenas 0, 2% no tempo total da aplicação. Já para aplicações com carga de trabalho irregular e com tempo consideravelmente útil de computação (similares ao Skyline Matrix Solver), mostramos que é possível obter ganho com a criação dinâmica de processos, em que no melhor dos casos, a implementação com MPI-2 foi 6% mais eficiente que a implementação MPI-1.
publishDate 2013
dc.date.issued.fl_str_mv 2013-03-04
dc.date.accessioned.fl_str_mv 2017-06-05T16:01:19Z
dc.date.available.fl_str_mv 2017-06-05T16:01:19Z
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.uri.fl_str_mv http://dspace.unipampa.edu.br/jspui/handle/riu/1566
url http://dspace.unipampa.edu.br/jspui/handle/riu/1566
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.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal do Pampa
dc.publisher.department.fl_str_mv Campus Alegrete
publisher.none.fl_str_mv Universidade Federal do Pampa
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNIPAMPA
instname:Universidade Federal do Pampa (UNIPAMPA)
instacron:UNIPAMPA
instname_str Universidade Federal do Pampa (UNIPAMPA)
instacron_str UNIPAMPA
institution UNIPAMPA
reponame_str Repositório Institucional da UNIPAMPA
collection Repositório Institucional da UNIPAMPA
bitstream.url.fl_str_mv https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/1/Um%20estudo%20sobre%20o%20desenvolvimento%20de%20aplica%c3%a7%c3%b5es%20com%20cria%c3%a7%c3%a3o%20din%c3%a2mica%20de%20processos%20em%20MPI.pdf
https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/2/license_rdf
https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/3/license.txt
https://repositorio.unipampa.edu.br/jspui/bitstream/riu/1566/4/Um%20estudo%20sobre%20o%20desenvolvimento%20de%20aplica%c3%a7%c3%b5es%20com%20cria%c3%a7%c3%a3o%20din%c3%a2mica%20de%20processos%20em%20MPI.pdf.txt
bitstream.checksum.fl_str_mv 91573cfe966d655b519c0957d645fc53
66e71c371cc565284e70f40736c94386
8a4605be74aa9ea9d79846c1fba20a33
45705d2b199fc1c5831f29bc60dc1ec9
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA)
repository.mail.fl_str_mv sisbi@unipampa.edu.br
_version_ 1813274811841904640