Performance-energy trade-offs prediction and runtime selection for parallel applications on heterogeneous multiprocessing systems

dc.contributor.advisorSouza, Samuel Xavier de
dc.contributor.advisorLatteshttp://lattes.cnpq.br/9892239670106361pt_BR
dc.contributor.authorCoutinho, Demétrios Araújo Magalhães
dc.contributor.authorLatteshttp://lattes.cnpq.br/6749444529357582pt_BR
dc.contributor.referees1Sensi, Daniele de
dc.contributor.referees2Beck Filho, Antonio Carlos Schneider
dc.contributor.referees2Latteshttp://lattes.cnpq.br/5446996798632062pt_BR
dc.contributor.referees3Barros, Carlos Avelino de
dc.contributor.referees3Latteshttp://lattes.cnpq.br/0466019450390663pt_BR
dc.contributor.referees4Freitas, Henrique Cota de
dc.contributor.referees4Latteshttp://lattes.cnpq.br/4075688424083407pt_BR
dc.date.accessioned2021-10-18T19:42:00Z
dc.date.available2021-10-18T19:42:00Z
dc.date.issued2021-07-15
dc.description.abstractIn the multi-core era, the size of the software operation space, i.e. hardware configurations (number of cores and operating frequency) that provide different software performance and energy consumption, is significantly larger. It becomes even more complex to choose a configuration that optimizes heterogeneous processors’ performance and energy consumption. Heterogeneous multi-core architectures offer flexibility in different core types and voltage and frequency pairings, defining a vast design space to explore. Furthermore, energy efficiency solutions are crucial on smaller devices as they can lead to longer battery life and a better user experience, including more complex applications. This thesis proposes a methodology to find performance-energy trade-offs for single parallel applications with dynamically balanced workloads running on Heterogeneous Multicore Processing (HMP) systems with a single instruction-set architecture (ISA). Our method devises novel analytical models for performance and power consumption whose parameters can be fitted using only a few strategically sampled offline measurements. These models are then used to estimate an application’s performance and energy consumption for the whole configuration space. In turn, these offline predictions define the choice of estimated Pareto-optimal configurations of the model, which are used to inform the configuration that the application should execute. The methodology was validated on an ODROID-XU3 board for eight programs from the PARSEC Benchmark, Phoronix Test Suite and Rodinia applications. Energy savings of up to 59.77%, 61.38% and 17.7% were observed compared to the performance, ondemand and powersave Linux governors, respectively, with higher or similar performance. This method aims to provide an optimal start point for a runtime energy manager to make better decisions according to the given application’s performance and energy consumption requirements and running system. Therefore, this thesis also proposes a strategy using the Pareto-optimal configuration selected by our models as an appropriate start point for a runtime support framework called Nornir. This framework performs a local search dynamically for a more desirable configuration of cores and frequency adapting to workload fluctuations and external interference. Also, we extend our power model to predict the whole device’s consumption, i.e. the sum of all internal components’ consumption.This hybrid approach was employed on an ODROID-XU3 board on two multi-thread applications. Preliminary results shows that Nornir starting with Pareto configuration can achieve up to 50% of energy savings compared to random starting configurations. On average, we observed that the default Linux governors consumed up to 1.62× more energy than Nornir using Pareto.pt_BR
dc.description.resumoNa era multicores, o tamanho do espaço de operação do software, ou seja, configurações de hardware que fornecem diferentes desempenho e consumo energético de um software, é significativamente maior. Além disso, torna-se ainda mais complexo escolher uma configuração que otimize o desempenho e o consumo de energia de processadores heterogêneos. Arquiteturas heterogêneas de vários núcleos oferecem flexibilidade em diferentes tipos de núcleos e de tensão e frequência, definindo um vasto espaço de design a ser explorado. Além do mais, soluções de eficiência energética é crucial em dispositivos menores, pois pode levar a uma vida útil mais longa da bateria e uma melhor experiência do usuário, incluindo aplicativos mais complexos. Esta tese propõe uma metodologia para encontrar balanços entre performance e energia para aplicações paralelas com cargas de trabalho balanceadas dinamicamente, rodando em sistemas multiprocessado heterogêneo com uma arquitetura de conjunto de instruções único (ISA). Nosso método concebe novos modelos analíticos para desempenho e consumo de energia cujos parâmetros podem ser ajustados usando apenas algumas medições off-line estrategicamente amostradas. Esses modelos são então usados para estimar o desempenho de um aplicativo e o consumo de energia para todo o espaço de configuração. Por sua vez, essas predições realizadas off-line definem a escolha das configurações de Pareto-ótimas estimadas do modelo, que são usadas para informar a configuração que o aplicativo deve executar. A metodologia foi validada em uma placa ODROID-XU3 para oito programas dos aplicativos PARSEC Benchmark, Phoronix Test Suite e Rodinia. Foram observadas economias de energia de até 59,77%, 61,38% e 17,7% em comparação com os governadores do Linux performance, ondemand e powersave, respectivamente, com desempenho superior ou semelhante. Este método visa fornecer um ponto de partida ideal para um gerenciador de energia para tomar melhores decisões de acordo com o desempenho do aplicativo e requisitos de consumo de energia e sistema em execução. Dessa forma, esta tese também propõe uma estratégia usando a configuração Pareto-ótima selecionada por nossos modelos como um ponto de partida apropriado para um runtime support framework, chamado Nornir. Esse framework realiza dinamicamente uma busca local por uma configuração mais desejável de núcleos e frequência adaptando às flutuações da carga de trabalho e interferência externa. Além disso, estendemos nosso modelo de energia para prever o consumo de todo o dispositivo, ou seja, a soma do consumo de todos os componentes internos. Esta abordagem híbrida foi empregada em uma placa ODROID-XU3 em dois aplicativos multi-thread. Nornir começando com a configuração de Pareto pode alcançar até 50% de economia de energia em comparação com configurações de partida aleatórias. Também observamos que o governador Linux performance e interactive consumiu até 1,62X mais energia do que Nornir usando Pareto.pt_BR
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESpt_BR
dc.identifier.citationCOUTINHO, Demétrios Araújo Magalhães. Performance-energy trade-offs prediction and runtime selection for parallel applications on heterogeneous multiprocessing systems. 2021. 110f. Tese (Doutorado em Engenharia Elétrica e de Computação) - Centro de Tecnologia, Universidade Federal do Rio Grande do Norte, Natal, 2021.pt_BR
dc.identifier.urihttps://repositorio.ufrn.br/handle/123456789/44626
dc.languagept_BRpt_BR
dc.publisherUniversidade Federal do Rio Grande do Nortept_BR
dc.publisher.countryBrasilpt_BR
dc.publisher.initialsUFRNpt_BR
dc.publisher.programPROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃOpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectHeterogeneous multi-processingpt_BR
dc.subjectEnergy efficiencypt_BR
dc.subjectPareto frontierpt_BR
dc.subjectRuntime energy managerpt_BR
dc.subjectPerformance, power and energy modelpt_BR
dc.titlePerformance-energy trade-offs prediction and runtime selection for parallel applications on heterogeneous multiprocessing systemspt_BR
dc.typedoctoralThesispt_BR

Arquivos

Pacote Original

Agora exibindo 1 - 1 de 1
Nenhuma Miniatura disponível
Nome:
Performanceenergytradeoffs_Coutinho_2021.pdf
Tamanho:
9.81 MB
Formato:
Adobe Portable Document Format
Nenhuma Miniatura disponível
Baixar