Diffusive load balancing for high performance computing applications: workload discretization and graph processing

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Freitas, Vinicius Marino Calvo Torres de
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
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