Análise da correlação entre erros transientes, desempenho e eficiência energética de aplicações paralelas executadas em dispositivos com múltiplos núcleos
dc.contributor.advisor | Reis, Ricardo Augusto da Luz | pt_BR |
dc.contributor.author | Thums, José Eduardo | pt_BR |
dc.date.accessioned | 2024-11-15T06:55:34Z | pt_BR |
dc.date.issued | 2024 | pt_BR |
dc.identifier.uri | http://hdl.handle.net/10183/281230 | pt_BR |
dc.description.abstract | A Internet das Coisas (IoT) é uma das inovações tecnológicas mais revolucionárias do século XXI, transformando objetos comuns em dispositivos interconectados e inteligentes. Com bilhões de dispositivos conectados globalmente, a IoT continua a criar novas possibilidades e desafios, moldando o futuro da tecnologia e da sociedade. Esses dispositivos estão sendo utilizados em aplicações que exigem altas capacidades de processamento e características de tempo real. Nesse sentido, o uso de técnicas de paralelismo são comuns para contornar problemas de desempenho, já que os dispositivos começaram a contar com processadores de múltiplos núcleos. Diversas pesquisas já evidenciaram de maneira isolada, que aplicações paralelas demonstraram eficiência energética e ganhos de desempenho quando implantados em plataformas multinúcleos de alto desempenho, incluindo processadores de propósito geral poderosos e unidades de processamento gráfico. No entanto, a investigação sobre o impacto do paralelismo em dispositivos com recursos limitados, bem como a avaliação da confiabilidade dessas aplicações frente aos erros transientes induzidos por radiação, não está tão disseminada. Desta forma, a principal contribuição deste trabalho, é investigar como a otimização do desempenho de aplicações em dispositivos embarcados para IoT com recursos limitados, que exploram o potencial do paralelismo com múltiplas threads impactam no desempenho, eficiência energética e confiabilidade de erros transientes nesses dispositivos, visando aprimorar sua performance em cenários de uso intensivo e em tempo real, fornecendo resultados valiosos para que engenheiros e pesquisadores possam se beneficiar das análises realizadas. A pesquisa foi conduzida por meio da execução de dois estudos de caso, cada um com características e aplicações distintas. O primeiro estudo propõe a utilização da Application Programming Interfaces (API) OpenMP para paralelizar seções críticas de quatro diferentes modelos de inferência de Machine Learning (ML) executados em um processador Arm Cortex-A7. O segundo estudo, por sua vez, apresenta uma análise detalhada de desempenho, considerando diferentes versões paralelas do benchmark da Calculadora de Desempenho de Motores a Jato (CDMJ), executados em quatro processadores Arm Cortex-A. Nesta análise, o desempenho de 5 bibliotecas de paralelismo são analisadas em relação ao desempenho e referente a aspectos de tempo real, como prazos não cumpridos. Além disso, este é o primeiro trabalho a utilizar o Mpbenchmark para avaliar o desempenho de processadores embarcados, o que exige uma análise adicional de otimização, levando em conta os recursos específicos da arquitetura alvo, realizada por meio da execução de versões cominstruções específicas para essa arquitetura. Os resultados das análises do primeiro estudo de caso mostram que além do desempenho, modelos paralelos aumentaram em até 2,6x a eficiência energética e proporcionaram uma redução no consumo de energia de 2.5x, enquanto reduziram sua suscetibilidade à ocorrência de erros transientes induzidos por radiação em até 6,6x em relação às versões sequenciais originais. Já no experimento da CDMJ, os resultados demonstram que a escolha apropriada da biblioteca de paralelismo pode influenciar aspectos como desempenho, eficiência energética e prazos perdidos. Em relação ao desempenho, observa-se uma variação média de até 66,01% quando executados no processador Cortex-A76, além de uma redução de até 70% no consumo de energia. Os resultados também mostram que a versão estendida, que utiliza tecnologia de ponto flutuante Single Instruction Multiple Data (SIMD) de 32 bits, eliminou todos os prazos perdidos quando executada nos processadores Arm Cortex-A53, A72 e A76. Além disso, a análise da correlação proposta revelou que as versões paralelas proporcionaram melhorias no desempenho, aumentando em até 2,6x a eficiência energética e melhorando a confiabilidade da aplicação frente a erros transientes induzidos por radiação em até 4,4x em comparação com as versões sequenciais. Desta forma, o trabalho apresenta contribuições significativas para o campo da IoT, demonstrando a eficácia das técnicas de paralelismo na otimização de dispositivos embarcados em ambientes com restrições de tempo e energia, garantindo maior robustez e confiabilidade em aplicações críticas. | pt_BR |
dc.description.abstract | The Internet of Things (IoT) is one of the most revolutionary technological innovations of the 21st century, transforming ordinary objects into interconnected and intelligent devices. With billions of devices connected globally, the IoT continues to create new possibilities and challenges, shaping the future of technology and society. These devices are being used in applications that require high processing capacities and real-time features. In this sense, the use of parallelism techniques has become commonplace to get around performance problems, as devices have begun to rely on multi-core processors. Several studies have already shown in isolation that parallel applications have demonstrated energy efficiency and performance gains when deployed on high-performance multicore platforms, including powerful general-purpose processors and graphics processing units. However, the investigation into the impact of parallelism on resource-constrained devices, as well as the assessment of the reliability of these applications in the face of radiation-induced soft errors, is not as widespread. Thus, the main contribution of this work is to investigate how optimizing the performance of applications in embedded devices for IoT with limited resources, which exploit the potential of parallelism with multiple threads, impacts on the performance, energy efficiency and reliability of soft errors in these devices, with the aim of improving their performance in intensive use scenarios and in real time, providing valuable results so that engineers and researchers can benefit from the analyses carried out. The research was conducted through two case studies, each with different characteristics and applications. The first study proposes the use of the API OpenMP to parallelize critical sections of four different ML inference models running on a Arm Cortex-A7 processor. The second study presents a detailed performance analysis, considering different parallel versions of the CDMJ benchmark, running on four Arm Cortex-A processors. In this analysis, the performance of 5 parallelism libraries is analyzed in relation to performance and real time aspects, such as missed deadlines. In addition, this is the first work to use Mpbenchmark to evaluate the performance of embedded processors, which requires an additional optimization analysis, taking into account the specific resources of the target architecture, carried out by executing versions with instructions specific to that architecture. The results of the analysis of the first case study show that in additionto performance, parallel models increased energy-efficiency by up to 2.6x and provided energy savings of 2.5x, while reducing their susceptibility to radiation-induced soft errors by up to 6.6x compared to the original sequential versions. As for the CDMJ experiment, the results show that the appropriate choice of parallelism library can influence aspects such as performance, energy efficiency and missed deadlines. In terms of performance, an average variation of up to 66.01% was observed when running on the Cortex-A76 processor, as well as a reduction of up to 70% in energy consumption. The results also show that the extended version, which uses 32-bit floating point SIMD technology, eliminated all missed deadlines when run on the Arm Cortex-A53, A72 and A76 processors. In addition, the proposed correlation analysis revealed that the parallel versions provided performance improvements, increasing energy-efficiency by up to 2.6x and improving application reliability against radiation-induced soft errors by up to 4.4x compared to the sequential versions. In this way, the work makes significant contributions to the field of IoT, demonstrating the effectiveness of parallelism techniques in optimizing embedded devices in environments with time and energy constraints, ensuring greater robustness and reliability in critical applications. | en |
dc.format.mimetype | application/pdf | pt_BR |
dc.language.iso | por | pt_BR |
dc.rights | Open Access | en |
dc.subject | Soft errors | en |
dc.subject | Tolerância a falhas | pt_BR |
dc.subject | Paralelismo | pt_BR |
dc.subject | Microelectronics | en |
dc.subject | Eficiência energética | pt_BR |
dc.subject | Multicore | en |
dc.subject | SoCs | en |
dc.subject | Multiprocessadores | pt_BR |
dc.subject | Desempenho : Circuitos integrados | pt_BR |
dc.title | Análise da correlação entre erros transientes, desempenho e eficiência energética de aplicações paralelas executadas em dispositivos com múltiplos núcleos | pt_BR |
dc.title.alternative | Analysis of the correlation between soft errors, performance, and energy efficiency of parallel applications executed on multi-core edge devices | en |
dc.type | Dissertação | pt_BR |
dc.identifier.nrb | 001215953 | pt_BR |
dc.degree.grantor | Universidade Federal do Rio Grande do Sul | pt_BR |
dc.degree.department | Instituto de Informática | pt_BR |
dc.degree.program | Programa de Pós-Graduação em Computação | pt_BR |
dc.degree.local | Porto Alegre, BR-RS | pt_BR |
dc.degree.date | 2024 | pt_BR |
dc.degree.level | mestrado | pt_BR |
Este item está licenciado na Creative Commons License
-
Ciências Exatas e da Terra (5141)Computação (1766)