A unified mapreduce programming interface for multi-core and distributed architectures
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da PUC_RS |
Texto Completo: | http://tede2.pucrs.br/tede2/handle/tede/6782 |
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. |
id |
P_RS_dab805d72ce5eecc6eb96d8eaeb94339 |
---|---|
oai_identifier_str |
oai:tede2.pucrs.br:tede/6782 |
network_acronym_str |
P_RS |
network_name_str |
Biblioteca Digital de Teses e Dissertações da PUC_RS |
repository_id_str |
|
spelling |
Fernandes, Luiz Gustavo Leão571.500.100-59http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4784653A5008.265.150-70http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4973183U8Adornes, Daniel Couto2016-06-22T19:44:58Z2015-03-31http://tede2.pucrs.br/tede2/handle/tede/6782In 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.Submitted by Setor de Tratamento da Informação - BC/PUCRS (tede2@pucrs.br) on 2016-06-22T19:44:58Z No. of bitstreams: 1 DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf: 1894086 bytes, checksum: f87c59fa92f43ed62efaafd9c724ed8d (MD5)Made available in DSpace on 2016-06-22T19:44:58Z (GMT). No. of bitstreams: 1 DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf: 1894086 bytes, checksum: f87c59fa92f43ed62efaafd9c724ed8d (MD5) Previous issue date: 2015-03-31Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESapplication/pdfhttp://tede2.pucrs.br:80/tede2/retrieve/165444/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.jpgengPontifícia Universidade Católica do Rio Grande do SulPrograma de Pós-Graduação em Ciência da ComputaçãoPUCRSBrasilFaculdade de InformáticaMEMÓRIA COMPARTILHADA DISTRIBUÍDAPROCESSAMENTO PARALELOPROCESSAMENTO DISTRIBUÍDOINFORMÁTICACIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOA unified mapreduce programming interface for multi-core and distributed architecturesUma interface de programação mapreduce unificada para arquiteturas multi-core e distribuídainfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis1974996533081274470600600600600-300854251040114914436717112058112045092075167498588264571info:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da PUC_RSinstname:Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)instacron:PUC_RSTHUMBNAILDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.jpgDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.jpgimage/jpeg3935http://tede2.pucrs.br/tede2/bitstream/tede/6782/5/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.jpg7b324fab29797b98abb30bf17f363da5MD55TEXTDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.txtDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.txttext/plain200155http://tede2.pucrs.br/tede2/bitstream/tede/6782/4/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.txt8c82eeb75e9b11a867ed0cddf1056d32MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-8610http://tede2.pucrs.br/tede2/bitstream/tede/6782/3/license.txt5a9d6006225b368ef605ba16b4f6d1beMD53ORIGINALDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdfDIS_DANIEL_COUTO_ADORNES_COMPLETO.pdfapplication/pdf1894086http://tede2.pucrs.br/tede2/bitstream/tede/6782/2/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdff87c59fa92f43ed62efaafd9c724ed8dMD52tede/67822016-06-22 20:00:31.553oai:tede2.pucrs.br:tede/6782QXV0b3JpemHDp8OjbyBwYXJhIFB1YmxpY2HDp8OjbyBFbGV0csO0bmljYTogQ29tIGJhc2Ugbm8gZGlzcG9zdG8gbmEgTGVpIEZlZGVyYWwgbsK6OS42MTAsIGRlIDE5IGRlIGZldmVyZWlybyBkZSAxOTk4LCBvIGF1dG9yIEFVVE9SSVpBIGEgcHVibGljYcOnw6NvIGVsZXRyw7RuaWNhIGRhIHByZXNlbnRlIG9icmEgbm8gYWNlcnZvIGRhIEJpYmxpb3RlY2EgRGlnaXRhbCBkYSBQb250aWbDrWNpYSBVbml2ZXJzaWRhZGUgQ2F0w7NsaWNhIGRvIFJpbyBHcmFuZGUgZG8gU3VsLCBzZWRpYWRhIGEgQXYuIElwaXJhbmdhIDY2ODEsIFBvcnRvIEFsZWdyZSwgUmlvIEdyYW5kZSBkbyBTdWwsIGNvbSByZWdpc3RybyBkZSBDTlBKIDg4NjMwNDEzMDAwMi04MSBiZW0gY29tbyBlbSBvdXRyYXMgYmlibGlvdGVjYXMgZGlnaXRhaXMsIG5hY2lvbmFpcyBlIGludGVybmFjaW9uYWlzLCBjb25zw7NyY2lvcyBlIHJlZGVzIMOgcyBxdWFpcyBhIGJpYmxpb3RlY2EgZGEgUFVDUlMgcG9zc2EgYSB2aXIgcGFydGljaXBhciwgc2VtIMO0bnVzIGFsdXNpdm8gYW9zIGRpcmVpdG9zIGF1dG9yYWlzLCBhIHTDrXR1bG8gZGUgZGl2dWxnYcOnw6NvIGRhIHByb2R1w6fDo28gY2llbnTDrWZpY2EuCg==Biblioteca Digital de Teses e Dissertaçõeshttp://tede2.pucrs.br/tede2/PRIhttps://tede2.pucrs.br/oai/requestbiblioteca.central@pucrs.br||opendoar:2016-06-22T23:00:31Biblioteca Digital de Teses e Dissertações da PUC_RS - Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)false |
dc.title.por.fl_str_mv |
A unified mapreduce programming interface for multi-core and distributed architectures |
dc.title.alternative.por.fl_str_mv |
Uma interface de programação mapreduce unificada para arquiteturas multi-core e distribuída |
title |
A unified mapreduce programming interface for multi-core and distributed architectures |
spellingShingle |
A unified mapreduce programming interface for multi-core and distributed architectures Adornes, Daniel Couto MEMÓRIA COMPARTILHADA DISTRIBUÍDA PROCESSAMENTO PARALELO PROCESSAMENTO DISTRIBUÍDO INFORMÁTICA CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
title_short |
A unified mapreduce programming interface for multi-core and distributed architectures |
title_full |
A unified mapreduce programming interface for multi-core and distributed architectures |
title_fullStr |
A unified mapreduce programming interface for multi-core and distributed architectures |
title_full_unstemmed |
A unified mapreduce programming interface for multi-core and distributed architectures |
title_sort |
A unified mapreduce programming interface for multi-core and distributed architectures |
author |
Adornes, Daniel Couto |
author_facet |
Adornes, Daniel Couto |
author_role |
author |
dc.contributor.advisor1.fl_str_mv |
Fernandes, Luiz Gustavo Leão |
dc.contributor.advisor1ID.fl_str_mv |
571.500.100-59 |
dc.contributor.advisor1Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4784653A5 |
dc.contributor.authorID.fl_str_mv |
008.265.150-70 |
dc.contributor.authorLattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4973183U8 |
dc.contributor.author.fl_str_mv |
Adornes, Daniel Couto |
contributor_str_mv |
Fernandes, Luiz Gustavo Leão |
dc.subject.por.fl_str_mv |
MEMÓRIA COMPARTILHADA DISTRIBUÍDA PROCESSAMENTO PARALELO PROCESSAMENTO DISTRIBUÍDO INFORMÁTICA |
topic |
MEMÓRIA COMPARTILHADA DISTRIBUÍDA PROCESSAMENTO PARALELO PROCESSAMENTO DISTRIBUÍDO INFORMÁTICA CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
description |
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. |
publishDate |
2015 |
dc.date.issued.fl_str_mv |
2015-03-31 |
dc.date.accessioned.fl_str_mv |
2016-06-22T19:44:58Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://tede2.pucrs.br/tede2/handle/tede/6782 |
url |
http://tede2.pucrs.br/tede2/handle/tede/6782 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.program.fl_str_mv |
1974996533081274470 |
dc.relation.confidence.fl_str_mv |
600 600 600 600 |
dc.relation.department.fl_str_mv |
-3008542510401149144 |
dc.relation.cnpq.fl_str_mv |
3671711205811204509 |
dc.relation.sponsorship.fl_str_mv |
2075167498588264571 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Pontifícia Universidade Católica do Rio Grande do Sul |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação |
dc.publisher.initials.fl_str_mv |
PUCRS |
dc.publisher.country.fl_str_mv |
Brasil |
dc.publisher.department.fl_str_mv |
Faculdade de Informática |
publisher.none.fl_str_mv |
Pontifícia Universidade Católica do Rio Grande do Sul |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da PUC_RS instname:Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS) instacron:PUC_RS |
instname_str |
Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS) |
instacron_str |
PUC_RS |
institution |
PUC_RS |
reponame_str |
Biblioteca Digital de Teses e Dissertações da PUC_RS |
collection |
Biblioteca Digital de Teses e Dissertações da PUC_RS |
bitstream.url.fl_str_mv |
http://tede2.pucrs.br/tede2/bitstream/tede/6782/5/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.jpg http://tede2.pucrs.br/tede2/bitstream/tede/6782/4/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf.txt http://tede2.pucrs.br/tede2/bitstream/tede/6782/3/license.txt http://tede2.pucrs.br/tede2/bitstream/tede/6782/2/DIS_DANIEL_COUTO_ADORNES_COMPLETO.pdf |
bitstream.checksum.fl_str_mv |
7b324fab29797b98abb30bf17f363da5 8c82eeb75e9b11a867ed0cddf1056d32 5a9d6006225b368ef605ba16b4f6d1be f87c59fa92f43ed62efaafd9c724ed8d |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da PUC_RS - Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS) |
repository.mail.fl_str_mv |
biblioteca.central@pucrs.br|| |
_version_ |
1799765320119877632 |