A runtime system for data-flow task programming on multicore architectures with accelerators
Autor(a) principal: | |
---|---|
Data de Publicação: | 2014 |
Tipo de documento: | Tese |
Idioma: | eng |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/95985 |
Resumo: | Dans cette thèse , nous proposons d’étudier des questions sur le parallélism de tâche avec dépendance de données dans le cadre de machines multicoeur avec des accélérateurs. La solution proposée a été développée en utilisant l’interface de programmation haute niveau XKaapi du projet MOAIS de l’INRIA Rhône-Alpes. D’abord nous avons étudié des questions liés à une approche d’exécution totalement asyncrone et l’ordonnancement par vol de travail sur des architectures multi-GPU. Le vol de travail avec localité de données a montré des résultats significatifs, mais il ne prend pas en compte des différents ressources de calcul. Ensuite nous avons conçu une interface et une modèle de coût qui permettent d’écrire des politiques d’ordonnancement sur XKaapi. Finalement on a évalué XKaapi sur un coprocesseur Intel Xeon Phi en mode natif. Notre conclusion est double. D’abord nous avons montré que le modèle de programmation data-flow peut être efficace sur des accélérateurs tels que des GPUs ou des coprocesseurs Intel Xeon Phi. Ensuite, le support à des différents politiques d’ordonnancement est indispensable. Les modèles de coût permettent d’obtenir de performance significatifs sur des calculs très réguliers, tandis que le vol de travail permet de redistribuer la charge en cours d’exécution. |
id |
URGS_d7955c3f6b65238bdc5579b792e1a694 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/95985 |
network_acronym_str |
URGS |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFRGS |
repository_id_str |
1853 |
spelling |
Lima, João Vicente FerreiraMaillard, Nicolas BrunoRaffin, BrunoDanjean, Vincent2014-06-04T02:04:37Z2014http://hdl.handle.net/10183/95985000919054Dans cette thèse , nous proposons d’étudier des questions sur le parallélism de tâche avec dépendance de données dans le cadre de machines multicoeur avec des accélérateurs. La solution proposée a été développée en utilisant l’interface de programmation haute niveau XKaapi du projet MOAIS de l’INRIA Rhône-Alpes. D’abord nous avons étudié des questions liés à une approche d’exécution totalement asyncrone et l’ordonnancement par vol de travail sur des architectures multi-GPU. Le vol de travail avec localité de données a montré des résultats significatifs, mais il ne prend pas en compte des différents ressources de calcul. Ensuite nous avons conçu une interface et une modèle de coût qui permettent d’écrire des politiques d’ordonnancement sur XKaapi. Finalement on a évalué XKaapi sur un coprocesseur Intel Xeon Phi en mode natif. Notre conclusion est double. D’abord nous avons montré que le modèle de programmation data-flow peut être efficace sur des accélérateurs tels que des GPUs ou des coprocesseurs Intel Xeon Phi. Ensuite, le support à des différents politiques d’ordonnancement est indispensable. Les modèles de coût permettent d’obtenir de performance significatifs sur des calculs très réguliers, tandis que le vol de travail permet de redistribuer la charge en cours d’exécution.Esta tese investiga os desafios no uso de paralelismo de tarefas com dependências de dados em arquiteturas multi-CPU com aceleradores. Para tanto, o XKaapi, desenvolvido no grupo de pesquisa MOAIS (INRIA Rhône-Alpes), é a ferramenta de programação base deste trabalho. Em um primeiro momento, este trabalho propôs extensões ao XKaapi a fim de sobrepor transferência de dados com execução através de operações concorrentes em GPU, em conjunto com escalonamento por roubo de tarefas em multi-GPU. Os resultados experimentais sugerem que o suporte a asincronismo é importante à escalabilidade e desempenho em multi-GPU. Apesar da localidade de dados, o roubo de tarefas não pondera a capacidade de processamento das unidades de processamento disponíveis. Nós estudamos estratégias de escalonamento com predição de desempenho em tempo de execução através de modelos de custo de execução. Desenvolveu-se um framework sobre o XKaapi de escalonamento que proporciona a implementação de diferentes algoritmos de escalonamento. Esta tese também avaliou o XKaapi em coprocessodores Intel Xeon Phi para execução nativa. A conclusão desta tese é dupla. Primeiramente, nós concluímos que um modelo de programação com dependências de dados pode ser eficiente em aceleradores, tais como GPUs e coprocessadores Intel Xeon Phi. Não obstante, uma ferramenta de programação com suporte a diferentes estratégias de escalonamento é essencial. Modelos de custo podem ser usados no contexto de algoritmos paralelos regulares, enquanto que o roubo de tarefas poder reagir a desbalanceamentos em tempo de execução.In this thesis, we propose to study the issues of task parallelism with data dependencies on multicore architectures with accelerators. We target those architectures with the XKaapi runtime system developed by the MOAIS team (INRIA Rhône-Alpes). We first studied the issues on multi-GPU architectures for asynchronous execution and scheduling. Work stealing with heuristics showed significant performance results, but did not consider the computing power of different resources. Next, we designed a scheduling framework and a performance model to support scheduling strategies over XKaapi runtime. Finally, we performed experimental evaluations over the Intel Xeon Phi coprocessor in native execution. Our conclusion is twofold. First we concluded that data-flow task programming can be efficient on accelerators, which may be GPUs or Intel Xeon Phi coprocessors. Second, the runtime support of different scheduling strategies is essential. Cost models provide significant performance results over very regular computations, while work stealing can react to imbalances at runtime.application/pdfengProgrammation parallèleAccélérateurParallélisme de tâcheDépendance de donnéesVol de travailArquitetura : ComputadoresProcessamento paraleloParallel programmingAcceleratorsTask parallelismData flow dependenciesWork stealingA runtime system for data-flow task programming on multicore architectures with acceleratorsUma ferramenta para programação com dependência de dados em arquiteturas multicore com aceleradores Vers un support exécutif avec dépendance de données pour les architectures multicoeur avec des accélérateurs info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2014doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000919054.pdf000919054.pdfTexto completo (inglês)application/pdf3231989http://www.lume.ufrgs.br/bitstream/10183/95985/1/000919054.pdf61958a273246129c2631219835506dfbMD51TEXT000919054.pdf.txt000919054.pdf.txtExtracted Texttext/plain362760http://www.lume.ufrgs.br/bitstream/10183/95985/2/000919054.pdf.txtc07b4ead1abcaeb14212b1e1d25aeb26MD52THUMBNAIL000919054.pdf.jpg000919054.pdf.jpgGenerated Thumbnailimage/jpeg1117http://www.lume.ufrgs.br/bitstream/10183/95985/3/000919054.pdf.jpgbda8edfead8203842df26f7f3a042790MD5310183/959852021-05-07 05:07:44.486968oai:www.lume.ufrgs.br:10183/95985Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532021-05-07T08:07:44Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
A runtime system for data-flow task programming on multicore architectures with accelerators |
dc.title.alternative.pt.fl_str_mv |
Uma ferramenta para programação com dependência de dados em arquiteturas multicore com aceleradores |
dc.title.alternative.fr.fl_str_mv |
Vers un support exécutif avec dépendance de données pour les architectures multicoeur avec des accélérateurs |
title |
A runtime system for data-flow task programming on multicore architectures with accelerators |
spellingShingle |
A runtime system for data-flow task programming on multicore architectures with accelerators Lima, João Vicente Ferreira Programmation parallèle Accélérateur Parallélisme de tâche Dépendance de données Vol de travail Arquitetura : Computadores Processamento paralelo Parallel programming Accelerators Task parallelism Data flow dependencies Work stealing |
title_short |
A runtime system for data-flow task programming on multicore architectures with accelerators |
title_full |
A runtime system for data-flow task programming on multicore architectures with accelerators |
title_fullStr |
A runtime system for data-flow task programming on multicore architectures with accelerators |
title_full_unstemmed |
A runtime system for data-flow task programming on multicore architectures with accelerators |
title_sort |
A runtime system for data-flow task programming on multicore architectures with accelerators |
author |
Lima, João Vicente Ferreira |
author_facet |
Lima, João Vicente Ferreira |
author_role |
author |
dc.contributor.author.fl_str_mv |
Lima, João Vicente Ferreira |
dc.contributor.advisor1.fl_str_mv |
Maillard, Nicolas Bruno Raffin, Bruno |
dc.contributor.advisor-co1.fl_str_mv |
Danjean, Vincent |
contributor_str_mv |
Maillard, Nicolas Bruno Raffin, Bruno Danjean, Vincent |
dc.subject.fr.fl_str_mv |
Programmation parallèle Accélérateur Parallélisme de tâche Dépendance de données Vol de travail |
topic |
Programmation parallèle Accélérateur Parallélisme de tâche Dépendance de données Vol de travail Arquitetura : Computadores Processamento paralelo Parallel programming Accelerators Task parallelism Data flow dependencies Work stealing |
dc.subject.por.fl_str_mv |
Arquitetura : Computadores Processamento paralelo |
dc.subject.eng.fl_str_mv |
Parallel programming Accelerators Task parallelism Data flow dependencies Work stealing |
description |
Dans cette thèse , nous proposons d’étudier des questions sur le parallélism de tâche avec dépendance de données dans le cadre de machines multicoeur avec des accélérateurs. La solution proposée a été développée en utilisant l’interface de programmation haute niveau XKaapi du projet MOAIS de l’INRIA Rhône-Alpes. D’abord nous avons étudié des questions liés à une approche d’exécution totalement asyncrone et l’ordonnancement par vol de travail sur des architectures multi-GPU. Le vol de travail avec localité de données a montré des résultats significatifs, mais il ne prend pas en compte des différents ressources de calcul. Ensuite nous avons conçu une interface et une modèle de coût qui permettent d’écrire des politiques d’ordonnancement sur XKaapi. Finalement on a évalué XKaapi sur un coprocesseur Intel Xeon Phi en mode natif. Notre conclusion est double. D’abord nous avons montré que le modèle de programmation data-flow peut être efficace sur des accélérateurs tels que des GPUs ou des coprocesseurs Intel Xeon Phi. Ensuite, le support à des différents politiques d’ordonnancement est indispensable. Les modèles de coût permettent d’obtenir de performance significatifs sur des calculs très réguliers, tandis que le vol de travail permet de redistribuer la charge en cours d’exécution. |
publishDate |
2014 |
dc.date.accessioned.fl_str_mv |
2014-06-04T02:04:37Z |
dc.date.issued.fl_str_mv |
2014 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/95985 |
dc.identifier.nrb.pt_BR.fl_str_mv |
000919054 |
url |
http://hdl.handle.net/10183/95985 |
identifier_str_mv |
000919054 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
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/95985/1/000919054.pdf http://www.lume.ufrgs.br/bitstream/10183/95985/2/000919054.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/95985/3/000919054.pdf.jpg |
bitstream.checksum.fl_str_mv |
61958a273246129c2631219835506dfb c07b4ead1abcaeb14212b1e1d25aeb26 bda8edfead8203842df26f7f3a042790 |
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_ |
1810085286532612096 |