Hybrid Code Placement for Heterogeneous Architectures

dc.creatorMarcelo Pereira Novaes
dc.date.accessioned2019-08-09T16:10:11Z
dc.date.accessioned2025-09-09T00:41:11Z
dc.date.available2019-08-09T16:10:11Z
dc.date.issued2018-02-23
dc.description.abstractModern computer architectures are becoming each day more heterogeneous. Choosing the best hardware configuration for a given program is difficult, because programs, even of moderate size, go through many phases during execution. These phases benefit differently from the same hardware configuration. Researchers have used a plethora of techniques to deal with this problem, but two techniques seem to standout: dynamically or statically. The former is implemented at the runtime level, be it through an operating system or a scheduler/middleware. The latter is implemented at compilation level. In this dissertation, we will investigate the mixing of both approaches achieving a synergy that, otherwise, could not be attained by each technique individually. To demonstrate that our ideas are useful and effective, we compare this new code generator, called Astro, with state of the art approaches, which were used to reduce the energy consumption, maintaining performance constraints.
dc.identifier.urihttps://hdl.handle.net/1843/ESBF-B8VNJV
dc.languagePortuguês
dc.publisherUniversidade Federal de Minas Gerais
dc.rightsAcesso Aberto
dc.subjectCompiladores (Computadores)
dc.subjectComputação
dc.subjectArquitetura de computador
dc.subject.othernon-assisted instrumentation
dc.subject.otherLLVM
dc.subject.otherenergy-efficient systems
dc.subject.othersemi-supervised learning
dc.subject.otheradaptive programs
dc.subject.otherheterogeneous architectures
dc.subject.otherCompilers
dc.subject.otherreinforcement learning
dc.titleHybrid Code Placement for Heterogeneous Architectures
dc.typeDissertação de mestrado
local.contributor.advisor1Fernando Magno Quintao Pereira
local.contributor.referee1Adriano Alonso Veloso
local.description.resumoArquiteturas de computadores modernas estão se tornando a cada dia mais heterogêneas. Essa heterogenidade emerge da possibilidade de combinação, dentro de um mesmo dispositivo, de diferentes tipos de processadores. Escolher a melhor configuração desses processadores é uma tarefa difícil, porque programas, mesmo em tamanhos moderados, apresentam diferentes fases durante a sua execução. Essas fases se beneficiam de forma diferente do dispositivo. Pesquisadores vêm utilizando diversas técnicas para lidar com o problema, mas duas delas se destacam: a dinâmica e a estatica. A primeira, é implementada em tempo de execução, seja por um sistema operacional ou um escalonador. A última, é implementada em tempo de compilação. Nessa dissertação, investigaremos a mescla das duas abordagens de modo a conseguir uma sinergia a qual não seria obtida por cada uma das técnicas individualmente. Nesse novo esquema, nós usamos uma ferramenta de instrumentação que cria programas que se migram sozinhos usando ambas informações retiradas do código fonte e informações coletadas em tempo de execução. A ferramenta de instrumentação foi implementada na infraestrutura de compilação LLVM. Para demonstrar que nossas ideias são úteis e efetivas, essa dissertação de mestrado compara esse novo gerador decódigo, chamado Astro, com abordagens no estado-da-arte, o utilizando para reduzir o consumo de energia (mantendo restrições de performance) em conjuntos de aplicações entre diferentes placas embarcadas.
local.publisher.initialsUFMG

Arquivos

Pacote original

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
marcelopereiranovaes.pdf
Tamanho:
2.86 MB
Formato:
Adobe Portable Document Format