Optimizing machine learning models training in the cloud
Visualizar/abrir
Data
2023Autor
Orientador
Nível acadêmico
Mestrado
Tipo
Outro título
Otimizando o treinamento de modelos de aprendizado de máquina na nuvem
Assunto
Abstract
Driven by the development of new technologies such as personal assistants or self-driving cars, machine learning has quickly become one of the most active fields in computer science. From Big Data to Deep Learning applications, new workloads are resource demanding, driving high-performance computing (HPC) demand. Therefore, it is es sential to optimize the execution of these workloads on modern processors. Several ap proaches have been proposed to accelerate machine learning on GPUs, massively ...
Driven by the development of new technologies such as personal assistants or self-driving cars, machine learning has quickly become one of the most active fields in computer science. From Big Data to Deep Learning applications, new workloads are resource demanding, driving high-performance computing (HPC) demand. Therefore, it is es sential to optimize the execution of these workloads on modern processors. Several ap proaches have been proposed to accelerate machine learning on GPUs, massively parallel computers, and dedicated ASICs. On the other hand, there is a growth in the processing of computer programs in the cloud. It is a way to reduce the cost of acquiring computers to run programs locally. In this master’s thesis, we adapted and migrated three DL applications to exploit Cloud Computing resources. This approach helps alleviate contention for high-demand local HPC resources, allowing them to focus on running applications. We optimize the exe cution of these applications using Tensor Processing Units (TPUs). The objective is to evaluate the performance, accuracy, and cost of using such devices for ML/DL training. In our experiments, we showed that the size of the application could influence perfor mance and execution costs. Small applications, which end up not using all the hardware, may have little or no cost efficiency, i.e., the execution cost is higher and is not offset by the performance obtained. In these cases, the choice to run in the cloud must be analyzed with caution, noting if there are additional benefits. The performance achieved is im proved in larger applications, which use computational resources more effectively. Also, it is about 50% cost efficient in running the same amount of work compared to the local cluster. The cost per training can be further reduced through the use of preemptive TPUs, costing about 70% less compared to on-demand TPUs. ...
Resumo
Impulsionado pelo desenvolvimento de novas tecnologias, como assistentes pessoais ou carros autônomos, o aprendizado de máquina tornou-se rapidamente um dos campos mais ativos da ciência da computação. De Big Data a aplicativos de Aprendizado Profundo, as novas cargas de trabalho são notoriamente exigentes em termos de recursos intensificando a demanda por computação de alto desempenho (HPC). Portanto, é de suma importância otimizar a execução destas cargas de trabalho em processadores modernos ...
Impulsionado pelo desenvolvimento de novas tecnologias, como assistentes pessoais ou carros autônomos, o aprendizado de máquina tornou-se rapidamente um dos campos mais ativos da ciência da computação. De Big Data a aplicativos de Aprendizado Profundo, as novas cargas de trabalho são notoriamente exigentes em termos de recursos intensificando a demanda por computação de alto desempenho (HPC). Portanto, é de suma importância otimizar a execução destas cargas de trabalho em processadores modernos. Várias aborda gens foram propostas para acelerar o aprendizado de máquina em GPUs e computadores massivamente paralelos, bem como ASICs dedicados. Por outro lado, há um crescimento no processamento de programas de computador na nuvem. É uma forma de reduzir o custo de aquisição de computadores para executar programas localmente. Nesta dissertação de mestrado, nós adaptamos e migramos três aplicações DL para explo rar recursos de Cloud Computing. Essa abordagem ajuda a aliviar a contenção de recursos locais de alta demanda de HPC, permitindo que eles se concentrem na execução de aplicativos. Otimizamos a execução destas aplicações utilizando Tensor Processing Units (TPUs). O objetivo é avaliar o desempenho, a acurácia e custo do uso de tais dispositivos para treinamento de ML/DL. Em nossos experimentos, mostramos que o tamanho da aplicação pode influenciar no desempenho e no custo de execução. Pequenas aplicações, que acabam não utilizando todo o hardware podem ter pouca ou nenhuma eficiência de custo, ou seja, o custo de execução é maior e não é compensado pelo desempenho obtido. Nestes casos, a escolha de executar na nuvem deve ser analisada com cautela, observando se há beneficios adicionais. Em aplicações maiores, que usam de forma mais efetiva o recurso computacional, o desempenho alcançado é melhorado. Além disso, apresenta eficiência de custo de cerca de 50% na execução da mesma quantidade de trabalho comparado ao cluster local. O custo por treinamento pode ser ainda mais reduzido através do uso de TPUs preemptivas, custando cerca de 70% menos comparado com TPUs sob demanda. ...
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 (5129)Computação (1764)
Este item está licenciado na Creative Commons License