A practical evaluation of parallel and distributed deep learning frameworks
Visualizar/abrir
Data
2022Orientador
Nível acadêmico
Mestrado
Tipo
Outro título
Avaliação prática de frameworks para deep learning paralelo e distribuído
Assunto
Abstract
The computational power growth in the last years and the increase of data to be processed contributed to researchers in deep learning update their models to use distributed train ing. Distributed Deep Learning (DDL) is essential for solving large-scale problems faster and accurately using multiple devices to run the model in parallel. This strategy brings challenges to improving the training performance without losing accuracy and without increasing the overhead of exchanging data between host ...
The computational power growth in the last years and the increase of data to be processed contributed to researchers in deep learning update their models to use distributed train ing. Distributed Deep Learning (DDL) is essential for solving large-scale problems faster and accurately using multiple devices to run the model in parallel. This strategy brings challenges to improving the training performance without losing accuracy and without increasing the overhead of exchanging data between host and devices. Frameworks for DDL have become popular alternatives in the last years for training using multiple de vices, running on top of usual machine learning libraries. They are advantageous for final users since they require only a few extra lines of code to a single-node model script. However, from a High-Performance Computing (HPC) perspective, it is challenging to evaluate distributed training performance since the frameworks hide the implementation’s details. The use of performance analysis methodologies and visualization tools common to the HPC field can benefit DDL frameworks’ users to choose the best framework for their model and can benefit DDL frameworks’ developers by providing insights on how to optimize their applications. This work presents a performance analysis and compari son of two modern frameworks: Horovod, one of the most popular DDL frameworks used worldwide, and Tarantella, a recent framework with the same parallel strategy as Horovod but with a different all-reduce algorithm and distributed library. Our results showed that combining HPC and Machine Learning tools to evaluate the performance of DDL can enrich the findings and identify bottlenecks in the frameworks. Horovod presented higher scaling efficiency than Tarantella, with a difference of almost 50% in their efficiency scal ing from four to twelve GPUs. Although Horovod all-reduce algorithm trains faster than Tarantella, the last presented higher model accuracy. Using a temporal aggregation, we also identified the exact time spent computing and communicating during training, which can benefit developers in improving the frameworks. Since our approach is implemented at the DDL framework level, it can also be used to analyze the performance of other neu ral network models. ...
Resumo
O aumento do poder computacional e de dados disponíveis nos últimos anos contribuiu para que pesquisadores em Aprendizado Profundo atualizassem seus modelos para usar treinamento distribuído. Aprendizado Profundo Distribuído (APD) é essencial para re solver problemas de grande escala mais rapidamente e de forma precisa usando múltiplos dispositivos para treinarem em paralelo. Esta estratégia traz desafios em otimizar o de sempenho do treino sem perder a acurácia e sem gerar sobrecarga com comun ...
O aumento do poder computacional e de dados disponíveis nos últimos anos contribuiu para que pesquisadores em Aprendizado Profundo atualizassem seus modelos para usar treinamento distribuído. Aprendizado Profundo Distribuído (APD) é essencial para re solver problemas de grande escala mais rapidamente e de forma precisa usando múltiplos dispositivos para treinarem em paralelo. Esta estratégia traz desafios em otimizar o de sempenho do treino sem perder a acurácia e sem gerar sobrecarga com comunicações entre servidor e dispositivos. Frameworks para APD se tornaram uma alternativa para treinar redes neurais, executando sobre bibliotecas de Aprendizado de Máquina (AM). Esses frameworks são vantajosos para usuários finais, pois requerem algumas novas li nhas de código no script não-distribuído. No entanto, da perspectiva the Computação de Alto Desempenho (CAD), a avaliação do treinamento distribuído é um desafio, pois os frameworks escondem detalhes de suas implementações. O uso de metodologias aplica das em análise de desempenho e ferramentas para visualização comuns à área de CAD podem beneficiar usuários dos frameworks a escolherem o melhor para seu modelo, e também desenvolvedores dos frameworks a identificarem indicativos de como otimizá-los. Este trabalho apresenta uma avaliação de desempenho e comparação entre dois mo dernos frameworks para APD: Horovod, um dos mais populares usado mundialmente, e Tarantella, mais recente com a mesma estratégia de paralelização que o Horovod, mas com diferentes algoritmos e padrões para comunicação em sistemas distribuídos. Os re sultados mostram que combinar ferramentas de CAD e de AM para avaliar o desempenho de frameworks para APD enriquecem a análise de desempenho e ajudam a identificar gar galos nos frameworks. Horovod apresentou a maior eficiência escalando de quatro à oito GPUs, com uma diferença de quase 50% em relação ao Tarantella. Embora o algoritmo do Horovod treine mais rápido do que o do Tarantella, este apresentou maior acurácia do modelo. Usando agregação temporal, pode-se identificar o tempo gasto com com putação e com comunicação, o que pode beneficiar desenvolvedores a melhorarem seus frameworks. Nossa abordagem pode ser usada para análise de desempenho de diversos modelos de redes neurais artificiais, pois foi implementada a nível dos frameworks. ...
Instituição
Universidade Federal do Rio Grande do Sul. Instituto de Informática. Programa de Pós-Graduação em Computação.
Coleções
-
Ciências Exatas e da Terra (5135)Computação (1765)
Este item está licenciado na Creative Commons License