2 research outputs found

    Balanceamento de Carga Dinâmico Orientado a Aprendizado de Máquina para Aplicações Paralelas

    Get PDF
    TCC(graduação) - Universidade Federal de Santa Catarina. Centro Tecnológico. Ciências da Computação.Aplicações científicas desenvolvidas em grandes centros de pesquisa necessitam de alto po- der computacional para que possam obter resultados precisos. Para que seja possível explo- rar ao máximo todos os recursos computacionais e de memória disponíveis, faz-se o uso de plataformas de Computação de Alto Desempenho (High Performance Computing - HPC) em conjunto com interfaces de Computação Paralela. Uma aplicação HPC pode ser decomposta em tarefas paralelas, onde cada uma possui cargas computacionais diferentes de acordo com suas características individuais. Tais diferenças resultam em um desbalanceamento de carga entre os recursos computacionais, causando um impacto negativo no desempenho e escalabilidade da aplicação. Assim, para evitar o desperdício computacional e de energia, são aplicados algoritmos de escalonamento global para que essas tarefas em desequilíbrio sejam redistribuídas e o desempenho da aplicação tenha uma melhoria significativa. A proposta deste trabalho é a automatização da escolha de algoritmos de escalonamento global para aplicações científicas HPC, fazendo o uso de Aprendizagem de Máquina para au- xiliar na tomada de decisão do melhor algoritmo a ser escolhido em tempo de execução. Essa decisão é feita por um meta-escalonador adaptativo que foi desenvolvido com a finalidade de analisar dinamicamente uma aplicação nos instantes de seu balanceamento de carga, e invocar o algoritmo de Load Balancing (LB) mais apropriado para aquele contexto. Além de não existir um algoritmo ideal para encontrar uma distribuição de tarefas ótima que funci- one em todas as situações, não há uma forma de identificar qual algoritmo é o mais indicado para uma dada aplicação executando em uma dada plataforma e em um dado instante do tempo. Portanto, é um problema não trivial que afeta aplicações científicas atualmente e, assim, o foco deste trabalho é o estudo e implementação de uma proposta para a solução deste problema. Os experimentos realizados comparam o desempenho do meta-escalonador com outros quatro algoritmos de Balanceamento de Carga presentes no framework de LB do Charm++, além de comparar com o cenário em que a aplicação não realiza o balanceamento. Os re- sultados obtidos mostram que a solução proposta foi capaz de atingir um aumento no de- sempenho de 1.63% se comparado ao segundo melhor algoritmo do contexto analisado, e 11.34% melhor do que o cenário em que não ocorre balanceamento de carga. Adicional- mente, o meta-escalonador cumpriu com o objetivo de se adaptar ao comportamento ob- servado da aplicação em cada instante do balanceamento de carga, realizando a troca do algoritmo de LB em tempo de execução e mostrando-se mais vantajoso do que a abordagem estática de escolha do algoritmo
    corecore