Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel

Detalhes bibliográficos
Ano de defesa: 2012
Autor(a) principal: Graebin, Lucas
Orientador(a): Righi, Rodrigo da Rosa
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade do Vale do Rio dos Sinos
Programa de Pós-Graduação: Programa de Pós-Graduação em Computação Aplicada
Departamento: Escola Politécnica
País: Brasil
Palavras-chave em Português:
Palavras-chave em Inglês:
Área do conhecimento CNPq:
Link de acesso: http://www.repositorio.jesuita.org.br/handle/UNISINOS/4497
Resumo: Migração de processos é um pertinente mecanismo para oferecer balanceamento dinâmico de carga, principalmente em ambientes dinâmicos e heterogêneos. Em especial, esse tópico é importante para aplicações BSP (Bulk Synchronous Parallel) uma vez que elas compreendem execuções em fases, onde o tempo de cada superetapa é determinado pelo processo mais lento. Nesse contexto, esse trabalho apresenta o sistema jMigBSP. Ele permite a escrita de aplicações BSP em Java e seu diferencial diz respeito às facilidades de reescalonamento de objetos em duas maneiras: (i) usando diretivas de migração no código da aplicação e; (ii) através do balanceamento de carga automático em nível de middleware. Além das abordagens de reescalonamento, jMigBSP facilita a interação entre os objetos através de métodos para comunicação assíncrona e one-sided. O desenvolvimento de jMigBSP foi guiado pelas ideias de eficiência e flexibilidade. Em primeiro lugar, a eficiência é marcada pela preocupação com o seu desempenho se comparado com linguagens compiladas, bem como no próprio algoritmo de reescalonamento. Além disso, a flexibilidade está presente no tratamento do reescalonamento automático de objetos. A avaliação de jMigBSP compreendeu o desenvolvimento e a execução de duas aplicações BSP em um ambiente multicluster: (i) transformada rápida de Fourier e; (ii) compressão de imagens. Duas heurísticas para a seleção dos objetos candidatos à migração foram aplicadas na avaliação. A primeira seleciona um objeto BSP com o maior valor de PM (Potencial de Migração). A segunda escolhe uma percentagem de objetos baseado no maior PM. Os resultados mostram que jMigBSP oferece a oportunidade de ganhos de desempenho sem alterações no código da aplicação. jMigBSP torna possível ganhos de desempenho na casa de 29%, bem como produz uma baixa sobrecarga quando comparado com uma biblioteca de código nativo. Além disso, uma sobrecarga média de 5,52% foi observada no algoritmo de reescalonamento. Em geral, os resultados obtidos mostram na prática a teoria da migração de processos, onde aplicações computacionalmente intensivas (CPU-bound) são mais beneficiadas com a transferência de entidades (processos, tarefas, objetos etc.) para processadores mais rápidos. Considerando que a seleção de uma percentagem de objetos para migração se mostrou uma heurística eficiente, trabalhos futuros compreendem o desenvolvimento de outras que selecionam uma coleção de objetos sem a necessidade de parâmetros particulares para o reescalonador.
id USIN_bd06f00b02300a3ccfaa87dd08e947b4
oai_identifier_str oai:www.repositorio.jesuita.org.br:UNISINOS/4497
network_acronym_str USIN
network_name_str Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
repository_id_str
spelling 2015-07-16T15:53:35Z2015-07-16T15:53:35Z2012-04-26Submitted by Nara Lays Domingues Viana Oliveira (naradv) on 2015-07-16T15:53:35Z No. of bitstreams: 1 LUCAS.pdf: 1303250 bytes, checksum: 9f822df40e01702f7d665e6b6a631bf2 (MD5)Made available in DSpace on 2015-07-16T15:53:35Z (GMT). No. of bitstreams: 1 LUCAS.pdf: 1303250 bytes, checksum: 9f822df40e01702f7d665e6b6a631bf2 (MD5) Previous issue date: 2012Migração de processos é um pertinente mecanismo para oferecer balanceamento dinâmico de carga, principalmente em ambientes dinâmicos e heterogêneos. Em especial, esse tópico é importante para aplicações BSP (Bulk Synchronous Parallel) uma vez que elas compreendem execuções em fases, onde o tempo de cada superetapa é determinado pelo processo mais lento. Nesse contexto, esse trabalho apresenta o sistema jMigBSP. Ele permite a escrita de aplicações BSP em Java e seu diferencial diz respeito às facilidades de reescalonamento de objetos em duas maneiras: (i) usando diretivas de migração no código da aplicação e; (ii) através do balanceamento de carga automático em nível de middleware. Além das abordagens de reescalonamento, jMigBSP facilita a interação entre os objetos através de métodos para comunicação assíncrona e one-sided. O desenvolvimento de jMigBSP foi guiado pelas ideias de eficiência e flexibilidade. Em primeiro lugar, a eficiência é marcada pela preocupação com o seu desempenho se comparado com linguagens compiladas, bem como no próprio algoritmo de reescalonamento. Além disso, a flexibilidade está presente no tratamento do reescalonamento automático de objetos. A avaliação de jMigBSP compreendeu o desenvolvimento e a execução de duas aplicações BSP em um ambiente multicluster: (i) transformada rápida de Fourier e; (ii) compressão de imagens. Duas heurísticas para a seleção dos objetos candidatos à migração foram aplicadas na avaliação. A primeira seleciona um objeto BSP com o maior valor de PM (Potencial de Migração). A segunda escolhe uma percentagem de objetos baseado no maior PM. Os resultados mostram que jMigBSP oferece a oportunidade de ganhos de desempenho sem alterações no código da aplicação. jMigBSP torna possível ganhos de desempenho na casa de 29%, bem como produz uma baixa sobrecarga quando comparado com uma biblioteca de código nativo. Além disso, uma sobrecarga média de 5,52% foi observada no algoritmo de reescalonamento. Em geral, os resultados obtidos mostram na prática a teoria da migração de processos, onde aplicações computacionalmente intensivas (CPU-bound) são mais beneficiadas com a transferência de entidades (processos, tarefas, objetos etc.) para processadores mais rápidos. Considerando que a seleção de uma percentagem de objetos para migração se mostrou uma heurística eficiente, trabalhos futuros compreendem o desenvolvimento de outras que selecionam uma coleção de objetos sem a necessidade de parâmetros particulares para o reescalonador.Process migration is an useful mechanism for runtime load balancing, mainly in heterogeneous and dynamic environments. In particular, this technique is important for Bulk Synchronous Parallel (BSP) applications. This kind of application is based in rounds, or supersteps, where the time of each superstep is determined by the slowest process. In this context, this work presents the jMigBSP system. It was designed to act over BSP-based Java applications and its differential approach concerns the offering of the rescheduling facility in two ways: (i) by using migration directives in the application code directly and; (ii) through automatic load balancing at middleware level. In addition, the presented library makes the object interaction easier by providing one-sided asynchronous communication. The development of jMigBSP was guided by the following ideas: efficiency and flexibility. First of all, the efficiency topic involves the performance relation with compiled languages (native code), as well as the time spent in the rescheduling algorithm itself. Moreover, the flexibility is present in the treatment of automatic object rescheduling. The evaluation of jMigBSP comprised the development and execution of two BSP applications in a multicluster environment: (i) fast Fourier transform and; (ii) Fractal image compression. Two heuristics were used for selecting the candidate objects for migration in the evaluation. The first heuristic chooses the BSP object that presents the highest PM (Potential of Migration) value. The second heuristic selects a percentage of objects based on the highest PM value. The results showed that jMigBSP offers an opportunity to get performance in an effortless manner to the programmer since its does not need modifications in the application code. jMigBSP makes possible gains of performance up to 29% as well as produces a low overhead when compared with a C-based library. Furthermore, an average overhead of 5,52% was observed in the rescheduling algorithm. In general, the results demonstrate in practice the theory of process migration, where computationally intensive applications (CPU-bound) are most benefited by the entities transferring (processes, tasks or objects) to faster processors. Considering that the selection of a percentage of objects for migration showed an efficient heuristic, future work includes the development of new mechanisms that select a collection of objects without the need to setup particular parameters to the rescheduler.NenhumaGraebin, Lucashttp://lattes.cnpq.br/9822251293572355http://lattes.cnpq.br/2332604239081900Righi, Rodrigo da RosaUniversidade do Vale do Rio dos SinosPrograma de Pós-Graduação em Computação AplicadaUnisinosBrasilEscola PolitécnicaTratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous ParallelACCNPQ::Ciências Exatas e da Terra::Ciência da ComputaçãoBulk synchronous parallelJavaReescalonamentoBalanceamento de cargaReschedulingLoad balancinginfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesishttp://www.repositorio.jesuita.org.br/handle/UNISINOS/4497info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)instname:Universidade do Vale do Rio dos Sinos (UNISINOS)instacron:UNISINOSORIGINALLUCAS.pdfLUCAS.pdfapplication/pdf1303250http://repositorio.jesuita.org.br/bitstream/UNISINOS/4497/1/LUCAS.pdf9f822df40e01702f7d665e6b6a631bf2MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-82099http://repositorio.jesuita.org.br/bitstream/UNISINOS/4497/2/license.txte130fff006551e19abf270f718b7ab21MD52UNISINOS/44972016-03-10 09:14:23.996oai:www.repositorio.jesuita.org.br:UNISINOS/4497Ck5PVEE6IENPTE9RVUUgQVFVSSBBIFNVQSBQUj9QUklBIExJQ0VOP0EKCkVzdGEgbGljZW4/YSBkZSBleGVtcGxvID8gZm9ybmVjaWRhIGFwZW5hcyBwYXJhIGZpbnMgaW5mb3JtYXRpdm9zLgoKTGljZW4/YSBERSBESVNUUklCVUk/P08gTj9PLUVYQ0xVU0lWQQoKQ29tIGEgYXByZXNlbnRhPz9vIGRlc3RhIGxpY2VuP2EsIHZvYz8gKG8gYXV0b3IgKGVzKSBvdSBvIHRpdHVsYXIgZG9zIGRpcmVpdG9zIGRlIGF1dG9yKSBjb25jZWRlID8gClVuaXZlcnNpZGFkZSBkbyBWYWxlIGRvIFJpbyBkb3MgU2lub3MgKFVOSVNJTk9TKSBvIGRpcmVpdG8gbj9vLWV4Y2x1c2l2byBkZSByZXByb2R1emlyLCAgdHJhZHV6aXIgKGNvbmZvcm1lIGRlZmluaWRvIGFiYWl4byksIGUvb3UgCmRpc3RyaWJ1aXIgYSBzdWEgdGVzZSBvdSBkaXNzZXJ0YT8/byAoaW5jbHVpbmRvIG8gcmVzdW1vKSBwb3IgdG9kbyBvIG11bmRvIG5vIGZvcm1hdG8gaW1wcmVzc28gZSBlbGV0cj9uaWNvIGUgCmVtIHF1YWxxdWVyIG1laW8sIGluY2x1aW5kbyBvcyBmb3JtYXRvcyA/dWRpbyBvdSB2P2Rlby4KClZvYz8gY29uY29yZGEgcXVlIGEgU2lnbGEgZGUgVW5pdmVyc2lkYWRlIHBvZGUsIHNlbSBhbHRlcmFyIG8gY29udGU/ZG8sIHRyYW5zcG9yIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGE/P28gCnBhcmEgcXVhbHF1ZXIgbWVpbyBvdSBmb3JtYXRvIHBhcmEgZmlucyBkZSBwcmVzZXJ2YT8/by4KClZvYz8gdGFtYj9tIGNvbmNvcmRhIHF1ZSBhIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBwb2RlIG1hbnRlciBtYWlzIGRlIHVtYSBjP3BpYSBhIHN1YSB0ZXNlIG91IApkaXNzZXJ0YT8/byBwYXJhIGZpbnMgZGUgc2VndXJhbj9hLCBiYWNrLXVwIGUgcHJlc2VydmE/P28uCgpWb2M/IGRlY2xhcmEgcXVlIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGE/P28gPyBvcmlnaW5hbCBlIHF1ZSB2b2M/IHRlbSBvIHBvZGVyIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIApuZXN0YSBsaWNlbj9hLiBWb2M/IHRhbWI/bSBkZWNsYXJhIHF1ZSBvIGRlcD9zaXRvIGRhIHN1YSB0ZXNlIG91IGRpc3NlcnRhPz9vIG4/bywgcXVlIHNlamEgZGUgc2V1IApjb25oZWNpbWVudG8sIGluZnJpbmdlIGRpcmVpdG9zIGF1dG9yYWlzIGRlIG5pbmd1P20uCgpDYXNvIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGE/P28gY29udGVuaGEgbWF0ZXJpYWwgcXVlIHZvYz8gbj9vIHBvc3N1aSBhIHRpdHVsYXJpZGFkZSBkb3MgZGlyZWl0b3MgYXV0b3JhaXMsIHZvYz8gCmRlY2xhcmEgcXVlIG9idGV2ZSBhIHBlcm1pc3M/byBpcnJlc3RyaXRhIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBwYXJhIGNvbmNlZGVyID8gU2lnbGEgZGUgVW5pdmVyc2lkYWRlIApvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgbmVzdGEgbGljZW4/YSwgZSBxdWUgZXNzZSBtYXRlcmlhbCBkZSBwcm9wcmllZGFkZSBkZSB0ZXJjZWlyb3MgZXN0PyBjbGFyYW1lbnRlIAppZGVudGlmaWNhZG8gZSByZWNvbmhlY2lkbyBubyB0ZXh0byBvdSBubyBjb250ZT9kbyBkYSB0ZXNlIG91IGRpc3NlcnRhPz9vIG9yYSBkZXBvc2l0YWRhLgoKQ0FTTyBBIFRFU0UgT1UgRElTU0VSVEE/P08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9DP05JTyBPVSAKQVBPSU8gREUgVU1BIEFHP05DSUEgREUgRk9NRU5UTyBPVSBPVVRSTyBPUkdBTklTTU8gUVVFIE4/TyBTRUpBIEEgU0lHTEEgREUgClVOSVZFUlNJREFERSwgVk9DPyBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVM/TyBDT01PIApUQU1CP00gQVMgREVNQUlTIE9CUklHQT8/RVMgRVhJR0lEQVMgUE9SIENPTlRSQVRPIE9VIEFDT1JETy4KCkEgU2lnbGEgZGUgVW5pdmVyc2lkYWRlIHNlIGNvbXByb21ldGUgYSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIG8gc2V1IG5vbWUgKHMpIG91IG8ocykgbm9tZShzKSBkbyhzKSAKZGV0ZW50b3IoZXMpIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkYSB0ZXNlIG91IGRpc3NlcnRhPz9vLCBlIG4/byBmYXI/IHF1YWxxdWVyIGFsdGVyYT8/bywgYWw/bSBkYXF1ZWxhcyAKY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbj9hLgo=Biblioteca Digital de Teses e Dissertaçõeshttp://www.repositorio.jesuita.org.br/oai/requestopendoar:2016-03-10T12:14:23Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos) - Universidade do Vale do Rio dos Sinos (UNISINOS)false
dc.title.pt_BR.fl_str_mv Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
title Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
spellingShingle Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
Graebin, Lucas
ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
Bulk synchronous parallel
Java
Reescalonamento
Balanceamento de carga
Rescheduling
Load balancing
title_short Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
title_full Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
title_fullStr Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
title_full_unstemmed Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
title_sort Tratamento Flexível e Eficiente da Migração de Objetos Java em Aplicações Bulk Synchronous Parallel
author Graebin, Lucas
author_facet Graebin, Lucas
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/9822251293572355
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/2332604239081900
dc.contributor.author.fl_str_mv Graebin, Lucas
dc.contributor.advisor1.fl_str_mv Righi, Rodrigo da Rosa
contributor_str_mv Righi, Rodrigo da Rosa
dc.subject.cnpq.fl_str_mv ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
topic ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
Bulk synchronous parallel
Java
Reescalonamento
Balanceamento de carga
Rescheduling
Load balancing
dc.subject.por.fl_str_mv Bulk synchronous parallel
Java
Reescalonamento
Balanceamento de carga
dc.subject.eng.fl_str_mv Rescheduling
Load balancing
description Migração de processos é um pertinente mecanismo para oferecer balanceamento dinâmico de carga, principalmente em ambientes dinâmicos e heterogêneos. Em especial, esse tópico é importante para aplicações BSP (Bulk Synchronous Parallel) uma vez que elas compreendem execuções em fases, onde o tempo de cada superetapa é determinado pelo processo mais lento. Nesse contexto, esse trabalho apresenta o sistema jMigBSP. Ele permite a escrita de aplicações BSP em Java e seu diferencial diz respeito às facilidades de reescalonamento de objetos em duas maneiras: (i) usando diretivas de migração no código da aplicação e; (ii) através do balanceamento de carga automático em nível de middleware. Além das abordagens de reescalonamento, jMigBSP facilita a interação entre os objetos através de métodos para comunicação assíncrona e one-sided. O desenvolvimento de jMigBSP foi guiado pelas ideias de eficiência e flexibilidade. Em primeiro lugar, a eficiência é marcada pela preocupação com o seu desempenho se comparado com linguagens compiladas, bem como no próprio algoritmo de reescalonamento. Além disso, a flexibilidade está presente no tratamento do reescalonamento automático de objetos. A avaliação de jMigBSP compreendeu o desenvolvimento e a execução de duas aplicações BSP em um ambiente multicluster: (i) transformada rápida de Fourier e; (ii) compressão de imagens. Duas heurísticas para a seleção dos objetos candidatos à migração foram aplicadas na avaliação. A primeira seleciona um objeto BSP com o maior valor de PM (Potencial de Migração). A segunda escolhe uma percentagem de objetos baseado no maior PM. Os resultados mostram que jMigBSP oferece a oportunidade de ganhos de desempenho sem alterações no código da aplicação. jMigBSP torna possível ganhos de desempenho na casa de 29%, bem como produz uma baixa sobrecarga quando comparado com uma biblioteca de código nativo. Além disso, uma sobrecarga média de 5,52% foi observada no algoritmo de reescalonamento. Em geral, os resultados obtidos mostram na prática a teoria da migração de processos, onde aplicações computacionalmente intensivas (CPU-bound) são mais beneficiadas com a transferência de entidades (processos, tarefas, objetos etc.) para processadores mais rápidos. Considerando que a seleção de uma percentagem de objetos para migração se mostrou uma heurística eficiente, trabalhos futuros compreendem o desenvolvimento de outras que selecionam uma coleção de objetos sem a necessidade de parâmetros particulares para o reescalonador.
publishDate 2012
dc.date.issued.fl_str_mv 2012-04-26
dc.date.accessioned.fl_str_mv 2015-07-16T15:53:35Z
dc.date.available.fl_str_mv 2015-07-16T15:53:35Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://www.repositorio.jesuita.org.br/handle/UNISINOS/4497
url http://www.repositorio.jesuita.org.br/handle/UNISINOS/4497
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.publisher.none.fl_str_mv Universidade do Vale do Rio dos Sinos
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Computação Aplicada
dc.publisher.initials.fl_str_mv Unisinos
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Escola Politécnica
publisher.none.fl_str_mv Universidade do Vale do Rio dos Sinos
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
instname:Universidade do Vale do Rio dos Sinos (UNISINOS)
instacron:UNISINOS
instname_str Universidade do Vale do Rio dos Sinos (UNISINOS)
instacron_str UNISINOS
institution UNISINOS
reponame_str Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
collection Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
bitstream.url.fl_str_mv http://repositorio.jesuita.org.br/bitstream/UNISINOS/4497/1/LUCAS.pdf
http://repositorio.jesuita.org.br/bitstream/UNISINOS/4497/2/license.txt
bitstream.checksum.fl_str_mv 9f822df40e01702f7d665e6b6a631bf2
e130fff006551e19abf270f718b7ab21
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos) - Universidade do Vale do Rio dos Sinos (UNISINOS)
repository.mail.fl_str_mv
_version_ 1797220872862302208