Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU

Detalhes bibliográficos
Autor(a) principal: Pinto, Vinícius Garcia
Data de Publicação: 2013
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFRGS
Texto Completo: http://hdl.handle.net/10183/71270
Resumo: Nos últimos anos, uma das alternativas adotadas para aumentar o desempenho de sistemas de processamento de alto desempenho têm sido o uso de arquiteturas híbridas. Essas arquiteturas são constituídas de processadores multicore e coprocessadores especializados, como GPUs. Esses coprocessadores atuam como aceleradores em alguns tipos de operações. Por outro lado, as ferramentas e modelos de programação paralela atuais não são adequados para cenários híbridos, produzindo aplicações pouco portáveis. O paralelismo de tarefas considerado um paradigma de programação genérico e de alto nível pode ser adotado neste cenário. Porém, exige o uso de algoritmos de escalonamento dinâmicos, como o algoritmo de roubo de tarefas. Neste contexto, este trabalho apresenta um middleware (WORMS) que oferece suporte ao paralelismo de tarefas com escalonamento por roubo de tarefas em sistemas híbridos multi-CPU e multi-GPU. Esse middleware permite que as tarefas tenham implementação tanto para execução em CPUs quanto em GPUs, decidindo em tempo de execução qual das implementações será executada de acordo com os recursos de hardware disponíveis. Os resultados obtidos com o WORMS mostram ser possível superar, em algumas aplicações, tanto o desempenho de ferramentas de referência para execução em CPU quanto de ferramentas para execução em GPUs.
id URGS_a9f55bc5f1953bd2a6205dd81d6fe6b6
oai_identifier_str oai:www.lume.ufrgs.br:10183/71270
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str 1853
spelling Pinto, Vinícius GarciaMaillard, Nicolas Bruno2013-05-07T01:49:47Z2013http://hdl.handle.net/10183/71270000879864Nos últimos anos, uma das alternativas adotadas para aumentar o desempenho de sistemas de processamento de alto desempenho têm sido o uso de arquiteturas híbridas. Essas arquiteturas são constituídas de processadores multicore e coprocessadores especializados, como GPUs. Esses coprocessadores atuam como aceleradores em alguns tipos de operações. Por outro lado, as ferramentas e modelos de programação paralela atuais não são adequados para cenários híbridos, produzindo aplicações pouco portáveis. O paralelismo de tarefas considerado um paradigma de programação genérico e de alto nível pode ser adotado neste cenário. Porém, exige o uso de algoritmos de escalonamento dinâmicos, como o algoritmo de roubo de tarefas. Neste contexto, este trabalho apresenta um middleware (WORMS) que oferece suporte ao paralelismo de tarefas com escalonamento por roubo de tarefas em sistemas híbridos multi-CPU e multi-GPU. Esse middleware permite que as tarefas tenham implementação tanto para execução em CPUs quanto em GPUs, decidindo em tempo de execução qual das implementações será executada de acordo com os recursos de hardware disponíveis. Os resultados obtidos com o WORMS mostram ser possível superar, em algumas aplicações, tanto o desempenho de ferramentas de referência para execução em CPU quanto de ferramentas para execução em GPUs.In the last years, one of alternatives adopted to increase performance in high performance computing systems have been the use of hybrid architectures. These architectures consist of multicore processors and specialized coprocessors, like GPUs. Coprocessors act as accelerators in some types of operations. On the other hand, current parallel programming models and tools are not suitable for hybrid scenarios, generating less portable applications. Task parallelism, considered a generic and high level programming paradigm, can be used in this scenario. However, it requires the use of dynamic scheduling algorithms, such as work stealing. In this context, this work presents a middleware (WORMS) that supports task parallelism with work stealing scheduling in multi-CPU and multi-GPU systems. This middleware allows task implementations for both CPU and GPU, deciding at runtime which implementation will run according to the available hardware resources. The performance results obtained with WORMS showed that is possible to outperform both CPU and GPU reference tools in some applications.application/pdfporProcessamento : Alto desempenhoProcessamento paraleloClusterParallel programmingHybrid parallel programmingGPUParallel programming toolsWork stealing schedulingEscalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPUinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2013mestradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000879864.pdf000879864.pdfTexto completoapplication/pdf1560854http://www.lume.ufrgs.br/bitstream/10183/71270/1/000879864.pdf62376d351aead80cf163cddb17ca458cMD51TEXT000879864.pdf.txt000879864.pdf.txtExtracted Texttext/plain143083http://www.lume.ufrgs.br/bitstream/10183/71270/2/000879864.pdf.txt27611f416d1f6a3fde5f6ab163793eddMD52THUMBNAIL000879864.pdf.jpg000879864.pdf.jpgGenerated Thumbnailimage/jpeg1014http://www.lume.ufrgs.br/bitstream/10183/71270/3/000879864.pdf.jpg6332500805395e822d5921891c5d2801MD5310183/712702018-10-17 07:27:40.126oai:www.lume.ufrgs.br:10183/71270Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532018-10-17T10:27:40Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
title Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
spellingShingle Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
Pinto, Vinícius Garcia
Processamento : Alto desempenho
Processamento paralelo
Cluster
Parallel programming
Hybrid parallel programming
GPU
Parallel programming tools
Work stealing scheduling
title_short Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
title_full Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
title_fullStr Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
title_full_unstemmed Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
title_sort Escalonamento por roubo de tarefas em sistemas Multi-CPU e Multi-GPU
author Pinto, Vinícius Garcia
author_facet Pinto, Vinícius Garcia
author_role author
dc.contributor.author.fl_str_mv Pinto, Vinícius Garcia
dc.contributor.advisor1.fl_str_mv Maillard, Nicolas Bruno
contributor_str_mv Maillard, Nicolas Bruno
dc.subject.por.fl_str_mv Processamento : Alto desempenho
Processamento paralelo
Cluster
topic Processamento : Alto desempenho
Processamento paralelo
Cluster
Parallel programming
Hybrid parallel programming
GPU
Parallel programming tools
Work stealing scheduling
dc.subject.eng.fl_str_mv Parallel programming
Hybrid parallel programming
GPU
Parallel programming tools
Work stealing scheduling
description Nos últimos anos, uma das alternativas adotadas para aumentar o desempenho de sistemas de processamento de alto desempenho têm sido o uso de arquiteturas híbridas. Essas arquiteturas são constituídas de processadores multicore e coprocessadores especializados, como GPUs. Esses coprocessadores atuam como aceleradores em alguns tipos de operações. Por outro lado, as ferramentas e modelos de programação paralela atuais não são adequados para cenários híbridos, produzindo aplicações pouco portáveis. O paralelismo de tarefas considerado um paradigma de programação genérico e de alto nível pode ser adotado neste cenário. Porém, exige o uso de algoritmos de escalonamento dinâmicos, como o algoritmo de roubo de tarefas. Neste contexto, este trabalho apresenta um middleware (WORMS) que oferece suporte ao paralelismo de tarefas com escalonamento por roubo de tarefas em sistemas híbridos multi-CPU e multi-GPU. Esse middleware permite que as tarefas tenham implementação tanto para execução em CPUs quanto em GPUs, decidindo em tempo de execução qual das implementações será executada de acordo com os recursos de hardware disponíveis. Os resultados obtidos com o WORMS mostram ser possível superar, em algumas aplicações, tanto o desempenho de ferramentas de referência para execução em CPU quanto de ferramentas para execução em GPUs.
publishDate 2013
dc.date.accessioned.fl_str_mv 2013-05-07T01:49:47Z
dc.date.issued.fl_str_mv 2013
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://hdl.handle.net/10183/71270
dc.identifier.nrb.pt_BR.fl_str_mv 000879864
url http://hdl.handle.net/10183/71270
identifier_str_mv 000879864
dc.language.iso.fl_str_mv por
language por
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.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/71270/1/000879864.pdf
http://www.lume.ufrgs.br/bitstream/10183/71270/2/000879864.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/71270/3/000879864.pdf.jpg
bitstream.checksum.fl_str_mv 62376d351aead80cf163cddb17ca458c
27611f416d1f6a3fde5f6ab163793edd
6332500805395e822d5921891c5d2801
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1810085256297971712