Diffusive load balancing for high performance computing applications: workload discretization and graph processing
Ano de defesa: | 2020 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | eng |
Instituição de defesa: |
Não Informado pela instituição
|
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: | |
Link de acesso: | https://repositorio.ufsc.br/handle/123456789/219253 |
Resumo: | Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2020. |
id |
UFSC_12b4c0469895ca7eee313d087ac8b840 |
---|---|
oai_identifier_str |
oai:repositorio.ufsc.br:123456789/219253 |
network_acronym_str |
UFSC |
network_name_str |
Repositório Institucional da UFSC |
repository_id_str |
|
spelling |
Diffusive load balancing for high performance computing applications: workload discretization and graph processingComputaçãoAlgorítmos computacionaisGrafos de ligaçãoProcessamento eletrônico de dadosDissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2020.Heurísticas de balanceamento de carga periódico são utilizadas em aplicações paralelas iterativas para garantir o uso eficiente de plataformas computacionais de alto desempenho. Roubo de tarefas (work stealing) é uma das mais conhecidas técnicas de balanceamento de carga, mas não é a mais amigável para aplicações iterativas. Algumas heurísticas de balanceamento de carga também tentam utilizar padrões de comunicação das aplicações para aprimorar a afinidade das tarefas em suas decisões de mapeamento, o que pode levar a melhores resultados. De toda forma, um mapeamento ótimo de tarefas para máquinas paralelas, que minimize o tempo total de execução, é um problema NP-difícil, desta forma, heurísticas subótimas são empregadas para escalonar tarefas em tempo adequado. Entre as abordagens existentes, o balanceamento de carga difusivo destaca-se como uma alternativa escalável para aplicações iterativas, podendo se beneficiar de estratégias de roubo de tarefas e e da ciência de comunicação. No contexto desta dissertação serão propostas múltiplas abordagens para introduzir esses fatores para balanceadores de carga difusivos, entre eles: (i) algoritmos inspirados em roubo de tarefas, (ii) discretização de carga que preserva afinidade de tarefas, e (iii) uma representação distribuída de grafo para viabilizar ciência de comunicação em balanceadores difusivos. Estas contribuições foram implementadas num sistema de execução paralelo (parallel runtime system) do estado da arte, o Charm++, e avaliadas com benchmarks sintéticos e de dinâmica molecular. Resultados mostram o potencial e performance de balanceadores de carga difusivos em plataformas de tamanhos diversos. Nossa abordagem baseada em roubo de tarefas, PackSteal, foi a heurística de melhor performance na maioria dos cenários explorados, sendo a única capaz de acelerar alguns deles. Nosso método de discretização de trabalho mostrou ganhos significativos na aplicação de dinâmica molecular, superando todos os demais métodos. Finalmente, nossa abordagem ciente de comunicação foi capaz de atingir aceleramento superescalar no processo de criação da estrutura de dados, quando comparada a abordagens centralizadas, o que é um forte indício para sua viabilidade.Abstract: Periodical load balancing heuristics are employed in parallel iterative applications to assure the effective use of high performance computing platforms. Work stealing is one of the most widely used load balancing techniques, but it is not the most friendly for iterative applications. Some load balancing heuristics also attempt to use application communication patterns to enhance the task affinity in their mapping decisions, which may lead to better results. Nonetheless, optimal mapping of tasks to machines, while minimizing overall makespan, is regarded as an NP-Hard problem, so suboptimal heuristics are used to schedule these tasks in feasible time. Among the existing approaches, diffusive load balancers are the most scalable for iterative applications and have much to profit from work stealing and communication awareness. In this master's thesis, we propose multiple approaches to introduce these factors to diffusive load balancers, among them: (i) work stealing inspired algorithms, (ii) workload discretization that preserves task affinity, and (iii) distributed graph representations to enable communication awareness in diffusive load balancers. We implemented our contributions in a state-of-the-art parallel runtime system, Charm++, and evaluated our techniques with synthetic and Molecular Dynamics (MD) benchmarks. Results show the potential and performance of diffusive load balancing algorithms in platforms of multiple sizes. Our work stealing inspired approach, PackSteal, was the best performing heuristic in most of the application scenarios, being the only one able to accelerate some of them. Our workload discretization method has shown significant performance gains in the MD application, outranking all contenders. Finally, our communication-aware approach was able to achieve superscalar speedups in the data structure generation process, when compared to centralized approaches, which greatly advocates for its viability.Castro, Márcio BastosPilla, Laércio LimaUniversidade Federal de Santa CatarinaFreitas, Vinicius Marino Calvo Torres de2021-01-14T18:06:25Z2021-01-14T18:06:25Z2020info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis117 p.| il., gráfs.application/pdf370573https://repositorio.ufsc.br/handle/123456789/219253engreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSCinfo:eu-repo/semantics/openAccess2021-01-14T18:06:25Zoai:repositorio.ufsc.br:123456789/219253Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestopendoar:23732021-01-14T18:06:25Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false |
dc.title.none.fl_str_mv |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
title |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
spellingShingle |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing Freitas, Vinicius Marino Calvo Torres de Computação Algorítmos computacionais Grafos de ligação Processamento eletrônico de dados |
title_short |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
title_full |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
title_fullStr |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
title_full_unstemmed |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
title_sort |
Diffusive load balancing for high performance computing applications: workload discretization and graph processing |
author |
Freitas, Vinicius Marino Calvo Torres de |
author_facet |
Freitas, Vinicius Marino Calvo Torres de |
author_role |
author |
dc.contributor.none.fl_str_mv |
Castro, Márcio Bastos Pilla, Laércio Lima Universidade Federal de Santa Catarina |
dc.contributor.author.fl_str_mv |
Freitas, Vinicius Marino Calvo Torres de |
dc.subject.por.fl_str_mv |
Computação Algorítmos computacionais Grafos de ligação Processamento eletrônico de dados |
topic |
Computação Algorítmos computacionais Grafos de ligação Processamento eletrônico de dados |
description |
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2020. |
publishDate |
2020 |
dc.date.none.fl_str_mv |
2020 2021-01-14T18:06:25Z 2021-01-14T18:06:25Z |
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 |
370573 https://repositorio.ufsc.br/handle/123456789/219253 |
identifier_str_mv |
370573 |
url |
https://repositorio.ufsc.br/handle/123456789/219253 |
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 |
117 p.| il., gráfs. application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSC instname:Universidade Federal de Santa Catarina (UFSC) instacron:UFSC |
instname_str |
Universidade Federal de Santa Catarina (UFSC) |
instacron_str |
UFSC |
institution |
UFSC |
reponame_str |
Repositório Institucional da UFSC |
collection |
Repositório Institucional da UFSC |
repository.name.fl_str_mv |
Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC) |
repository.mail.fl_str_mv |
|
_version_ |
1813725349846974464 |