AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos
Autor(a) principal: | |
---|---|
Data de Publicação: | 2011 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFC |
Texto Completo: | http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=6583 |
Resumo: | Reduzir a complexidade do software e permitir o desenvolvimento em larga escala de aplicaÃÃes voltados à ComputaÃÃo de Alto Desempenho (CAD) tem exigido o desenvolvimento de ferramentas com potencial capacidade de abstraÃÃo na construÃÃo de sistemas. As tecnologias que envolvem o desenvolvimento de componentes procuram alcanÃar esses requisitos, buscando oferecer suporte a reuso, interoperabilidade, produtividade e maior flexibilidade de manutenÃÃo e desenvolvimento de aplicaÃÃes de alto desempenho. No entanto, conciliar alto poder de abstraÃÃo com alto poder de expressividade na construÃÃo de componentes de aplicaÃÃes nÃo à algo trivial, o que as atuais tecnologias nÃo tÃm conseguido solucionar, uma vez que adotam as tradicionais formas de paralelismo por processos. Diante disso, a plataforma HPE (Hash Programming Environment), baseada no modelo de componentes Hash, tem buscado suportar formas mais gerais de paralelismo, conciliando expressividade com alto poder de abstraÃÃo, uma vez que o modelo Hash à baseado em interesses de software e nÃo em processo, como à feito tradicionalmente. Nesse contexto, esta dissertaÃÃo busca explorar os recursos do HPE, certificando-se de sua viabilidade no contexto de aplicaÃÃes de alto desempenho e validando suas tÃcnicas de programaÃÃo paralela baseadas em componentes. Isso tem resultado em um processo de construÃÃo de aplicaÃÃes cientÃficas sob a abordagem de componentes, tendo como base o conjunto de aplicativos NPB (Nas Parallel Benchmarks), o qual passa por um processo rigoroso de conversÃo para ser suportado pelo HPE. No processo de conversÃo e refatoraÃÃo em componentes, busca-se conservar as estruturas originais do NPB, sem alteraÃÃes significativas nos cÃdigos que declaram e inicializam as estruturas de dados, bem como os que descrevem computaÃÃes, topologia de processos e comunicaÃÃo entre os processos. Para validaÃÃo da plataforma, uma avaliaÃÃo sistemÃtica de desempenho à feita, tendo como princÃpio isolar e mensurar o peso ou o efeito da refatoraÃÃo do NPB em componentes do modelo Hash. |
id |
UFC_f0170f5fca088a334b37d6bec03cffa0 |
---|---|
oai_identifier_str |
oai:www.teses.ufc.br:4758 |
network_acronym_str |
UFC |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFC |
spelling |
info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisAvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos Performance Evaluation of a Platform for Component-Based Parallel Programming2011-10-07Francisco Heron de Carvalho Junior53945395372http://lattes.cnpq.br/4164818158160492Joaquim Bento Cavalcante Neto41039181368http://lattes.cnpq.br/0866205347972203Ricardo Cordeiro CorrÃa86549103720http://lattes.cnpq.br/8599181647215929Ricardo Massa Ferreira Lima78334519400http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4728222A553598792115http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4734435H1Cenez AraÃjo de RezendeUniversidade Federal do CearÃPrograma de PÃs-GraduaÃÃo em CiÃncia da ComputaÃÃoUFCBRComponentes ProgramaÃÃo Paralela ComputaÃÃo de Alto Desempenho Component Parallel Programming High Performance ComputingCIENCIA DA COMPUTACAOReduzir a complexidade do software e permitir o desenvolvimento em larga escala de aplicaÃÃes voltados à ComputaÃÃo de Alto Desempenho (CAD) tem exigido o desenvolvimento de ferramentas com potencial capacidade de abstraÃÃo na construÃÃo de sistemas. As tecnologias que envolvem o desenvolvimento de componentes procuram alcanÃar esses requisitos, buscando oferecer suporte a reuso, interoperabilidade, produtividade e maior flexibilidade de manutenÃÃo e desenvolvimento de aplicaÃÃes de alto desempenho. No entanto, conciliar alto poder de abstraÃÃo com alto poder de expressividade na construÃÃo de componentes de aplicaÃÃes nÃo à algo trivial, o que as atuais tecnologias nÃo tÃm conseguido solucionar, uma vez que adotam as tradicionais formas de paralelismo por processos. Diante disso, a plataforma HPE (Hash Programming Environment), baseada no modelo de componentes Hash, tem buscado suportar formas mais gerais de paralelismo, conciliando expressividade com alto poder de abstraÃÃo, uma vez que o modelo Hash à baseado em interesses de software e nÃo em processo, como à feito tradicionalmente. Nesse contexto, esta dissertaÃÃo busca explorar os recursos do HPE, certificando-se de sua viabilidade no contexto de aplicaÃÃes de alto desempenho e validando suas tÃcnicas de programaÃÃo paralela baseadas em componentes. Isso tem resultado em um processo de construÃÃo de aplicaÃÃes cientÃficas sob a abordagem de componentes, tendo como base o conjunto de aplicativos NPB (Nas Parallel Benchmarks), o qual passa por um processo rigoroso de conversÃo para ser suportado pelo HPE. No processo de conversÃo e refatoraÃÃo em componentes, busca-se conservar as estruturas originais do NPB, sem alteraÃÃes significativas nos cÃdigos que declaram e inicializam as estruturas de dados, bem como os que descrevem computaÃÃes, topologia de processos e comunicaÃÃo entre os processos. Para validaÃÃo da plataforma, uma avaliaÃÃo sistemÃtica de desempenho à feita, tendo como princÃpio isolar e mensurar o peso ou o efeito da refatoraÃÃo do NPB em componentes do modelo Hash. In order to deal with programming-in-the-large requirements in emerging applications of High Performance Computing (HPC), it is still necessary the development of new software development tools for reconciling high level of abstraction, expressiveness and high performance. The technologies behind CBHPC (Component-Based High Performance Computing) target these requirements, looking for reuse of software parts, interoperability across execution platforms, high development productivity and easy maintenance. However, to reconcile high level of abstraction, high performance and high expressiveness for parallel programming models and patterns when building HPC applications is not trivial. For this reason, most of the current technologies fail in this context, since they adopt the traditional process-oriented perspective in the architecture of parallel programs. The HPE platform (Hash Programming Environment) sits on top of the Hash component model to support general forms of parallelism, by combining high expressiveness with high level of abstraction. The Hash component model proposes a concern-oriented perspective to parallel programming, in alternative to the traditional process-oriented approach. In this context, this dissertation is about the efficacy and efficiency of HPE for HPC applications, also validating some of its parallel programming techniques based on components. For that, a set of programs from NPB (NAS Parallel Benchmarks), a widely disseminated collection of benchmarks for evaluating the performance of parallel computing platforms, written in Fortran, C and Java, have been refactored into components aimed at the HPE platform. In such refactoring, the original structure of the benchmarks has been preserved, with minimal changes in the code that declare and initialize data structures, as well as those that describe computations and communication patterns. Using the component-based versions of the benchmarks, a systematic performance evaluation has been performed for quantifying the overheads caused strictly by the component-based structure.FundaÃÃo de Amparo à Pesquisa do Estado do CearÃhttp://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=6583application/pdfinfo:eu-repo/semantics/openAccessporreponame:Biblioteca Digital de Teses e Dissertações da UFCinstname:Universidade Federal do Cearáinstacron:UFC2019-01-21T11:19:43Zmail@mail.com - |
dc.title.pt.fl_str_mv |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
dc.title.alternative.en.fl_str_mv |
Performance Evaluation of a Platform for Component-Based Parallel Programming |
title |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
spellingShingle |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos Cenez AraÃjo de Rezende Componentes ProgramaÃÃo Paralela ComputaÃÃo de Alto Desempenho Component Parallel Programming High Performance Computing CIENCIA DA COMPUTACAO |
title_short |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
title_full |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
title_fullStr |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
title_full_unstemmed |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
title_sort |
AvaliaÃÃo de Desempenho de uma Plataforma de Componentes Paralelos |
author |
Cenez AraÃjo de Rezende |
author_facet |
Cenez AraÃjo de Rezende |
author_role |
author |
dc.contributor.advisor1.fl_str_mv |
Francisco Heron de Carvalho Junior |
dc.contributor.advisor1ID.fl_str_mv |
53945395372 |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/4164818158160492 |
dc.contributor.referee1.fl_str_mv |
Joaquim Bento Cavalcante Neto |
dc.contributor.referee1ID.fl_str_mv |
41039181368 |
dc.contributor.referee1Lattes.fl_str_mv |
http://lattes.cnpq.br/0866205347972203 |
dc.contributor.referee2.fl_str_mv |
Ricardo Cordeiro CorrÃa |
dc.contributor.referee2ID.fl_str_mv |
86549103720 |
dc.contributor.referee2Lattes.fl_str_mv |
http://lattes.cnpq.br/8599181647215929 |
dc.contributor.referee3.fl_str_mv |
Ricardo Massa Ferreira Lima |
dc.contributor.referee3ID.fl_str_mv |
78334519400 |
dc.contributor.referee3Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4728222A5 |
dc.contributor.authorID.fl_str_mv |
53598792115 |
dc.contributor.authorLattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4734435H1 |
dc.contributor.author.fl_str_mv |
Cenez AraÃjo de Rezende |
contributor_str_mv |
Francisco Heron de Carvalho Junior Joaquim Bento Cavalcante Neto Ricardo Cordeiro CorrÃa Ricardo Massa Ferreira Lima |
dc.subject.por.fl_str_mv |
Componentes ProgramaÃÃo Paralela ComputaÃÃo de Alto Desempenho |
topic |
Componentes ProgramaÃÃo Paralela ComputaÃÃo de Alto Desempenho Component Parallel Programming High Performance Computing CIENCIA DA COMPUTACAO |
dc.subject.eng.fl_str_mv |
Component Parallel Programming High Performance Computing |
dc.subject.cnpq.fl_str_mv |
CIENCIA DA COMPUTACAO |
dc.description.sponsorship.fl_txt_mv |
FundaÃÃo de Amparo à Pesquisa do Estado do Cearà |
dc.description.abstract.por.fl_txt_mv |
Reduzir a complexidade do software e permitir o desenvolvimento em larga escala de aplicaÃÃes voltados à ComputaÃÃo de Alto Desempenho (CAD) tem exigido o desenvolvimento de ferramentas com potencial capacidade de abstraÃÃo na construÃÃo de sistemas. As tecnologias que envolvem o desenvolvimento de componentes procuram alcanÃar esses requisitos, buscando oferecer suporte a reuso, interoperabilidade, produtividade e maior flexibilidade de manutenÃÃo e desenvolvimento de aplicaÃÃes de alto desempenho. No entanto, conciliar alto poder de abstraÃÃo com alto poder de expressividade na construÃÃo de componentes de aplicaÃÃes nÃo à algo trivial, o que as atuais tecnologias nÃo tÃm conseguido solucionar, uma vez que adotam as tradicionais formas de paralelismo por processos. Diante disso, a plataforma HPE (Hash Programming Environment), baseada no modelo de componentes Hash, tem buscado suportar formas mais gerais de paralelismo, conciliando expressividade com alto poder de abstraÃÃo, uma vez que o modelo Hash à baseado em interesses de software e nÃo em processo, como à feito tradicionalmente. Nesse contexto, esta dissertaÃÃo busca explorar os recursos do HPE, certificando-se de sua viabilidade no contexto de aplicaÃÃes de alto desempenho e validando suas tÃcnicas de programaÃÃo paralela baseadas em componentes. Isso tem resultado em um processo de construÃÃo de aplicaÃÃes cientÃficas sob a abordagem de componentes, tendo como base o conjunto de aplicativos NPB (Nas Parallel Benchmarks), o qual passa por um processo rigoroso de conversÃo para ser suportado pelo HPE. No processo de conversÃo e refatoraÃÃo em componentes, busca-se conservar as estruturas originais do NPB, sem alteraÃÃes significativas nos cÃdigos que declaram e inicializam as estruturas de dados, bem como os que descrevem computaÃÃes, topologia de processos e comunicaÃÃo entre os processos. Para validaÃÃo da plataforma, uma avaliaÃÃo sistemÃtica de desempenho à feita, tendo como princÃpio isolar e mensurar o peso ou o efeito da refatoraÃÃo do NPB em componentes do modelo Hash. |
dc.description.abstract.eng.fl_txt_mv |
In order to deal with programming-in-the-large requirements in emerging applications of High Performance Computing (HPC), it is still necessary the development of new software development tools for reconciling high level of abstraction, expressiveness and high performance. The technologies behind CBHPC (Component-Based High Performance Computing) target these requirements, looking for reuse of software parts, interoperability across execution platforms, high development productivity and easy maintenance. However, to reconcile high level of abstraction, high performance and high expressiveness for parallel programming models and patterns when building HPC applications is not trivial. For this reason, most of the current technologies fail in this context, since they adopt the traditional process-oriented perspective in the architecture of parallel programs. The HPE platform (Hash Programming Environment) sits on top of the Hash component model to support general forms of parallelism, by combining high expressiveness with high level of abstraction. The Hash component model proposes a concern-oriented perspective to parallel programming, in alternative to the traditional process-oriented approach. In this context, this dissertation is about the efficacy and efficiency of HPE for HPC applications, also validating some of its parallel programming techniques based on components. For that, a set of programs from NPB (NAS Parallel Benchmarks), a widely disseminated collection of benchmarks for evaluating the performance of parallel computing platforms, written in Fortran, C and Java, have been refactored into components aimed at the HPE platform. In such refactoring, the original structure of the benchmarks has been preserved, with minimal changes in the code that declare and initialize data structures, as well as those that describe computations and communication patterns. Using the component-based versions of the benchmarks, a systematic performance evaluation has been performed for quantifying the overheads caused strictly by the component-based structure. |
description |
Reduzir a complexidade do software e permitir o desenvolvimento em larga escala de aplicaÃÃes voltados à ComputaÃÃo de Alto Desempenho (CAD) tem exigido o desenvolvimento de ferramentas com potencial capacidade de abstraÃÃo na construÃÃo de sistemas. As tecnologias que envolvem o desenvolvimento de componentes procuram alcanÃar esses requisitos, buscando oferecer suporte a reuso, interoperabilidade, produtividade e maior flexibilidade de manutenÃÃo e desenvolvimento de aplicaÃÃes de alto desempenho. No entanto, conciliar alto poder de abstraÃÃo com alto poder de expressividade na construÃÃo de componentes de aplicaÃÃes nÃo à algo trivial, o que as atuais tecnologias nÃo tÃm conseguido solucionar, uma vez que adotam as tradicionais formas de paralelismo por processos. Diante disso, a plataforma HPE (Hash Programming Environment), baseada no modelo de componentes Hash, tem buscado suportar formas mais gerais de paralelismo, conciliando expressividade com alto poder de abstraÃÃo, uma vez que o modelo Hash à baseado em interesses de software e nÃo em processo, como à feito tradicionalmente. Nesse contexto, esta dissertaÃÃo busca explorar os recursos do HPE, certificando-se de sua viabilidade no contexto de aplicaÃÃes de alto desempenho e validando suas tÃcnicas de programaÃÃo paralela baseadas em componentes. Isso tem resultado em um processo de construÃÃo de aplicaÃÃes cientÃficas sob a abordagem de componentes, tendo como base o conjunto de aplicativos NPB (Nas Parallel Benchmarks), o qual passa por um processo rigoroso de conversÃo para ser suportado pelo HPE. No processo de conversÃo e refatoraÃÃo em componentes, busca-se conservar as estruturas originais do NPB, sem alteraÃÃes significativas nos cÃdigos que declaram e inicializam as estruturas de dados, bem como os que descrevem computaÃÃes, topologia de processos e comunicaÃÃo entre os processos. Para validaÃÃo da plataforma, uma avaliaÃÃo sistemÃtica de desempenho à feita, tendo como princÃpio isolar e mensurar o peso ou o efeito da refatoraÃÃo do NPB em componentes do modelo Hash. |
publishDate |
2011 |
dc.date.issued.fl_str_mv |
2011-10-07 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
status_str |
publishedVersion |
format |
masterThesis |
dc.identifier.uri.fl_str_mv |
http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=6583 |
url |
http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=6583 |
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.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidade Federal do Cearà |
dc.publisher.program.fl_str_mv |
Programa de PÃs-GraduaÃÃo em CiÃncia da ComputaÃÃo |
dc.publisher.initials.fl_str_mv |
UFC |
dc.publisher.country.fl_str_mv |
BR |
publisher.none.fl_str_mv |
Universidade Federal do Cearà |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFC instname:Universidade Federal do Ceará instacron:UFC |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFC |
collection |
Biblioteca Digital de Teses e Dissertações da UFC |
instname_str |
Universidade Federal do Ceará |
instacron_str |
UFC |
institution |
UFC |
repository.name.fl_str_mv |
-
|
repository.mail.fl_str_mv |
mail@mail.com |
_version_ |
1643295152800792576 |