Use este identificador para citar ou linkar para este item: http://www.repositorio.ufc.br/handle/riufc/18450
Título: Infra-estrutura de componentes paralelos para aplicações de computação de alto desempenho
Título em inglês: Infrastructure of parallel components for applications of computation of high performance
Autor(es): Silva, Jefferson de Carvalho
Orientador(es): Carvalho Junior, Francisco Heron de
Palavras-chave: Ciência da computação
Arcabouços
Componentes
Paralelismo
Skeleton
Components
Data do documento: 2008
Citação: SILVA, J. C. (2008)
Resumo: 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.
Abstract: 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.
Descrição: SILVA, Jefferson de Carvalho. Infra-estrutura de componentes paralelos para aplicações de computação de alto desempenho. 2008. 116 f. Dissertação (Mestrado em ciência da computação)- Universidade Federal do Ceará, Fortaleza-CE, 2008.
URI: http://www.repositorio.ufc.br/handle/riufc/18450
Aparece nas coleções:DCOMP - Dissertações defendidas na UFC

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
2008_dis_jcsilva.pdf2,13 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.