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...

Full description

Bibliographic Details
Main Author: Jefferson de Carvalho Silva
Other Authors: Francisco Heron de Carvalho Junior
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