Utilize este identificador para citar ou criar um atalho para este documento: https://hdl.handle.net/10923/8505
Tipo: masterThesis
Título: A unified mapreduce programming interface for multi-core and distributed architectures
Autor(es): Adornes, Daniel Couto
Orientador: Fernandes, Luiz Gustavo Leão
Editora: Pontifícia Universidade Católica do Rio Grande do Sul
Programa: Programa de Pós-Graduação em Ciência da Computação
Data de Publicação: 2015
Palavras-chave: MEMÓRIA COMPARTILHADA DISTRIBUÍDA
PROCESSAMENTO PARALELO
PROCESSAMENTO DISTRIBUÍDO
INFORMÁTICA
Resumo: 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.
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.
URI: http://hdl.handle.net/10923/8505
Aparece nas Coleções:Dissertação e Tese

Arquivos neste item:
Arquivo Descrição TamanhoFormato 
000479075-Texto+Completo-0.pdfTexto Completo1,85 MBAdobe PDFAbrir
Exibir


Todos os itens no Repositório da PUCRS estão protegidos por copyright, com todos os direitos reservados, e estão licenciados com uma Licença Creative Commons - Atribuição-NãoComercial 4.0 Internacional. Saiba mais.