A runtime system for data-flow task programming on multicore architectures with accelerators

Detalhes bibliográficos
Autor(a) principal: Lima, João Vicente Ferreira
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