Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho
CoordenaÃÃo de AperfeiÃoamento de Pessoal de NÃvel Superior === A construÃÃo de novas aplicaÃÃes voltadas à ComputaÃÃo de Alto Desempenho (CAD) tÃm exigido ferramentas que conciliem um alto poder de abstraÃÃo e integraÃÃo de software. Dentre as soluÃÃes apresentadas pela comunidade cientÃfica estamo...
Main Author: | |
---|---|
Other Authors: | |
Format: | Others |
Language: | Portuguese |
Published: |
Universidade Federal do CearÃ
2008
|
Subjects: | |
Online Access: | http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=2170 |
id |
ndltd-IBICT-oai-www.teses.ufc.br-1996 |
---|---|
record_format |
oai_dc |
collection |
NDLTD |
language |
Portuguese |
format |
Others
|
sources |
NDLTD |
topic |
ArcabouÃos Componentes Paralelismo Skeleton Components Parallel CIENCIA DA COMPUTACAO |
spellingShingle |
ArcabouÃos Componentes Paralelismo Skeleton Components Parallel CIENCIA DA COMPUTACAO Jefferson de Carvalho Silva Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
description |
CoordenaÃÃo de AperfeiÃoamento de Pessoal de NÃvel Superior === A construÃÃo de novas aplicaÃÃes voltadas à ComputaÃÃo de Alto Desempenho (CAD) tÃm exigido ferramentas que conciliem um alto poder de abstraÃÃo e integraÃÃo de software. Dentre as soluÃÃes apresentadas pela comunidade cientÃfica estamos particularmente interessados naquelas baseadas em tecnologia de componentes. Os componentes tÃm sido usados para abordar novos requisitos de aplicaÃÃes de alto desempenho, entre as quais destacamos: interoperabilidade, reusabilidade, manutenibilidade e produtividade. As abordagens das aplicaÃÃes atuais baseadas em tecnologia de componentes, no entanto, nÃo conseguem abstrair formas mais gerais de paralelismo de maneira eficiente, tornando ainda o processo de desenvolvimento difÃcil, principalmente se o usuÃrio for leigo no conhecimento das peculiaridades de arquiteturas de computaÃÃo paralela. Um tempo precioso, o qual deveria ser utilizado para a soluÃÃo do problema, à perdido na implementaÃÃo eficiente do cÃdigo de paralelizaÃÃo. Diante desse contexto, esta dissertaÃÃo apresenta o HPE (Hash Programming Environment), uma soluÃÃo baseada no modelo # de componentes paralelos e na arquitetura Hash. O HPE define um conjunto de espÃcies de componentes responsÃveis pela construÃÃo, implantaÃÃo e execuÃÃo de programas paralelos sobre clusters de multiprocessadores. A arquitetura Hash à constituÃda de trÃs mÃdulos distintos: o Front-End, o Back-End e o Core. A contribuiÃÃo principal deste trabalho reside na implementaÃÃo de um Back-End, como uma plataforma de componentes paralelos que estende o Mono, plataforma de componentes de cÃdigo aberto baseado no padrÃo CLI (Common Language Interface). Feito isso, unimos o back-End Ãs implementaÃÃes jà existentes do Front-End e do Core, ambos em java e sobre a plataforma de desenvolvimento Eclipse, atravÃs de serviÃos web (web service). Ao final, apresentaremos um pequeno teste de conceito, construÃdo por um programa paralelo construÃdo a partir de componentes #, segundo as premissas e conceitos apresentados neste trabalho. === The development of new High Performance Computing (HPC) application has demanded a set of tools for reconciling high level of a abstraction with software integration. In particular, we are interested in component-based solutions presented by the scientific community in the last years. Components have been applied to meet new requirements of high performance application such as: interoperability, reusability, maintainability and productivity. Recent approaches for component based development time in HPC context, however, have not reconciled more expressive ways for parallel programming and efficiency. Unfortunately, this issue increases the software development time and gets worse when user have poor knowledge of architectural details of parallel computers and of requirements of applications. Precious time is lost optimizing parallel code, probably with non-portable results, instead of being applied to the solutions of the problem. This dissertation presents the Hash Programming Environment (HPE), a solution based on the # (reads "Hash") Component Model and on the Hash Framework Architecture. HPE defines a set of component kinds for building, deploying and executing parallel programs targeted at clusters of multiprocessors. The Hash Framework Architecture has three loosely coupled modules: the Front-End, the Back-End and the Core. The main contribution of this work is the implementation of the Back-End and the Core. The main contribution of this work is the implementation of the Back-End, since we have an early version of the Front-End and Core, both developed in Java on top of the Eclipse Platform. The Back-End was implemented as a parallel extension of a Mono, an open source component platform based on CLI (Common Language Interface) standard. Once independently done, we bound all the modules together, using web services technology. For evaluating the proposed Back-End, we have developed a small conceptual test application, composed by # components. |
author2 |
Francisco Heron de Carvalho Junior |
author_facet |
Francisco Heron de Carvalho Junior Jefferson de Carvalho Silva |
author |
Jefferson de Carvalho Silva |
author_sort |
Jefferson de Carvalho Silva |
title |
Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
title_short |
Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
title_full |
Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
title_fullStr |
Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
title_full_unstemmed |
Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho |
title_sort |
infra-estrutura de componentes paralelos para aplicaãães de computaãão de alto desempenho |
publisher |
Universidade Federal do Cearà |
publishDate |
2008 |
url |
http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=2170 |
work_keys_str_mv |
AT jeffersondecarvalhosilva infraestruturadecomponentesparalelosparaaplicaaaesdecomputaaaodealtodesempenho AT jeffersondecarvalhosilva infrastructureofparallelcomponentsforapplicationsofcomputationofhighperformance |
_version_ |
1718894084291035136 |
spelling |
ndltd-IBICT-oai-www.teses.ufc.br-19962019-01-21T22:24:23Z Infra-estrutura de componentes paralelos para aplicaÃÃes de computaÃÃo de alto desempenho Infrastructure of parallel components for applications of computation of high performance Jefferson de Carvalho Silva Francisco Heron de Carvalho Junior Rossana Maria de Castro Andrade Ricardo Cordeiro CorrÃa Rafael Dueire Lins ArcabouÃos Componentes Paralelismo Skeleton Components Parallel CIENCIA DA COMPUTACAO CoordenaÃÃo de AperfeiÃoamento de Pessoal de NÃvel Superior A construÃÃo de novas aplicaÃÃes voltadas à ComputaÃÃo de Alto Desempenho (CAD) tÃm exigido ferramentas que conciliem um alto poder de abstraÃÃo e integraÃÃo de software. Dentre as soluÃÃes apresentadas pela comunidade cientÃfica estamos particularmente interessados naquelas baseadas em tecnologia de componentes. Os componentes tÃm sido usados para abordar novos requisitos de aplicaÃÃes de alto desempenho, entre as quais destacamos: interoperabilidade, reusabilidade, manutenibilidade e produtividade. As abordagens das aplicaÃÃes atuais baseadas em tecnologia de componentes, no entanto, nÃo conseguem abstrair formas mais gerais de paralelismo de maneira eficiente, tornando ainda o processo de desenvolvimento difÃcil, principalmente se o usuÃrio for leigo no conhecimento das peculiaridades de arquiteturas de computaÃÃo paralela. Um tempo precioso, o qual deveria ser utilizado para a soluÃÃo do problema, à perdido na implementaÃÃo eficiente do cÃdigo de paralelizaÃÃo. Diante desse contexto, esta dissertaÃÃo apresenta o HPE (Hash Programming Environment), uma soluÃÃo baseada no modelo # de componentes paralelos e na arquitetura Hash. O HPE define um conjunto de espÃcies de componentes responsÃveis pela construÃÃo, implantaÃÃo e execuÃÃo de programas paralelos sobre clusters de multiprocessadores. A arquitetura Hash à constituÃda de trÃs mÃdulos distintos: o Front-End, o Back-End e o Core. A contribuiÃÃo principal deste trabalho reside na implementaÃÃo de um Back-End, como uma plataforma de componentes paralelos que estende o Mono, plataforma de componentes de cÃdigo aberto baseado no padrÃo CLI (Common Language Interface). Feito isso, unimos o back-End Ãs implementaÃÃes jà existentes do Front-End e do Core, ambos em java e sobre a plataforma de desenvolvimento Eclipse, atravÃs de serviÃos web (web service). Ao final, apresentaremos um pequeno teste de conceito, construÃdo por um programa paralelo construÃdo a partir de componentes #, segundo as premissas e conceitos apresentados neste trabalho. The development of new High Performance Computing (HPC) application has demanded a set of tools for reconciling high level of a abstraction with software integration. In particular, we are interested in component-based solutions presented by the scientific community in the last years. Components have been applied to meet new requirements of high performance application such as: interoperability, reusability, maintainability and productivity. Recent approaches for component based development time in HPC context, however, have not reconciled more expressive ways for parallel programming and efficiency. Unfortunately, this issue increases the software development time and gets worse when user have poor knowledge of architectural details of parallel computers and of requirements of applications. Precious time is lost optimizing parallel code, probably with non-portable results, instead of being applied to the solutions of the problem. This dissertation presents the Hash Programming Environment (HPE), a solution based on the # (reads "Hash") Component Model and on the Hash Framework Architecture. HPE defines a set of component kinds for building, deploying and executing parallel programs targeted at clusters of multiprocessors. The Hash Framework Architecture has three loosely coupled modules: the Front-End, the Back-End and the Core. The main contribution of this work is the implementation of the Back-End and the Core. The main contribution of this work is the implementation of the Back-End, since we have an early version of the Front-End and Core, both developed in Java on top of the Eclipse Platform. The Back-End was implemented as a parallel extension of a Mono, an open source component platform based on CLI (Common Language Interface) standard. Once independently done, we bound all the modules together, using web services technology. For evaluating the proposed Back-End, we have developed a small conceptual test application, composed by # components. 2008-06-03 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://www.teses.ufc.br/tde_busca/arquivo.php?codArquivo=2170 por info:eu-repo/semantics/openAccess application/pdf Universidade Federal do Cearà Programa de PÃs-GraduaÃÃo em CiÃncia da ComputaÃÃo UFC BR reponame:Biblioteca Digital de Teses e Dissertações da UFC instname:Universidade Federal do Ceará instacron:UFC |