Compartilhe o registro |
|
Use este identificador para citar ou linkar para este item:
https://tede2.pucrs.br/tede2/handle/tede/6782
Tipo do documento: | Dissertação |
Título: | A unified mapreduce programming interface for multi-core and distributed architectures |
Título(s) alternativo(s): | Uma interface de programação mapreduce unificada para arquiteturas multi-core e distribuída |
Autor: | Adornes, Daniel Couto |
Primeiro orientador: | Fernandes, Luiz Gustavo Leão |
Resumo: | Visando melhoria de performance, simplicidade e escalabilidade no processamento de dados amplos, o Google propôs o padrão paralelo MapReduce. Este padrão tem sido implementado de variadas formas para diferentes níveis de arquitetura, alcançando resultados significativos com respeito a computação de alto desempenho. No entanto, desenvolver código otimizado com tais soluções requer conhecimento especializado na interface e na linguagem de programação de cada solução. Recentemente, a DSL-POPP foi proposta como uma solução de linguagem de programação de alto nível para programação paralela orientada a padrões, visando abstrair as complexidades envolvidas em programação paralela e distribuída. Inspirado na DSL-POPP, este trabalho propõe a implementação de uma interface unificada de programação MapReduce com regras para transformação de código para soluções otimizadas para arquiteturas multi-core de memória compartilhada e distribuída. A avaliação demonstra que a interface proposta é capaz de evitar perdas de performance, enquanto alcança uma redução de código e esforço de programação de 41,84% a 96,48%. Ademais, a construção do gerador de código, a compatibilidade com outras soluções MapReduce e a extensão da DSL-POPP com o padrão MapReduce são propostas para trabalhos futuros. |
Abstract: | In order to improve performance, simplicity and scalability of large datasets processing, Google proposed the MapReduce parallel pattern. This pattern has been implemented in several ways for different architectural levels, achieving significant results for high performance computing. However, developing optimized code with those solutions requires specialized knowledge in each framework’s interface and programming language. Recently, the DSL-POPP was proposed as a framework with a high-level language for patternsoriented parallel programming, aimed at abstracting complexities of parallel and distributed code. Inspired on DSL-POPP, this work proposes the implementation of a unified MapReduce programming interface with rules for code transformation to optimized solutions for shared-memory multi-core and distributed architectures. The evaluation demonstrates that the proposed interface is able to avoid performance losses, while also achieving a code and a development cost reduction from 41.84% to 96.48%. Moreover, the construction of the code generator, the compatibility with other MapReduce solutions and the extension of DSL-POPP with the MapReduce pattern are proposed as future work. |
Palavras-chave: | MEMÓRIA COMPARTILHADA DISTRIBUÍDA PROCESSAMENTO PARALELO PROCESSAMENTO DISTRIBUÍDO INFORMÁTICA |
Área(s) do CNPq: | CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
Idioma: | eng |
País: | Brasil |
Instituição: | Pontifícia Universidade Católica do Rio Grande do Sul |
Sigla da instituição: | PUCRS |
Departamento: | Faculdade de Informática |
Programa: | Programa de Pós-Graduação em Ciência da Computação |
Tipo de acesso: | Acesso Aberto |
URI: | http://tede2.pucrs.br/tede2/handle/tede/6782 |
Data de defesa: | 31-Mar-2015 |
Aparece nas coleções: | Programa de Pós-Graduação em Ciência da Computação |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf | Texto Completo | 1,85 MB | Adobe PDF | Baixar/Abrir Pré-Visualizar |
Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.