Please use this identifier to cite or link to this item: http://hdl.handle.net/1843/40071
Full metadata record
DC FieldValueLanguage
dc.contributor.advisor1Fernando Magno Quintão pereirapt_BR
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/4608001746330875pt_BR
dc.contributor.referee1Daniel Fernandes Macedopt_BR
dc.contributor.referee2Rupesh Nasrept_BR
dc.creatorJunio Cezar Ribeiro da Silvapt_BR
dc.creator.Latteshttp://lattes.cnpq.br/7828781364615006pt_BR
dc.date.accessioned2022-03-15T01:15:52Z-
dc.date.available2022-03-15T01:15:52Z-
dc.date.issued2019-10-02-
dc.identifier.urihttp://hdl.handle.net/1843/40071-
dc.description.abstractSistemas heterogêneos multinúcleo combinam, sob um mesmo conjunto de instruções, diferentes tipos de processadores com o objetivo de conciliar alto desempenho com baixo consumo de energia. Uma pergunta importante sobre esses sistemas é como determinar a melhor configuração de hardware para diferentes execuções de programas. Uma configuração de hardware consiste no tipo e na frequência dos processadores que o programa pode usar em tempo de execução. As soluções atuais são completamente dinâmicas, por exemplo, baseadas em perfilamento in vivo ou completamente estáticas, com base em abordagens supervisionadas de aprendizado de máquina. Enquanto a abordagem dinâmica pode gerar sobrecarga indesejada no tempo de execução, a estática falha em não considerar a diversidade de entradas para os programas. Nesta dissertação, mostramos como contornar essa limitação de abordagens estáticas. Para esse fim, fornecemos um conjunto de técnicas de transformação de código que realizam regressão numérica em argumentos de funções, que podem ter tipos escalares ou abstratos, de modo a associar parâmetros com configurações ideais de hardware em tempo de execução. Nós projetamos e implementamos nossa abordagem em uma infraestrutura de compilação conhecida como Soot e a avaliamos em programas reais dos conjuntos PBBS e Renaissance. Mostramos que podemos prever consistentemente a melhor configuração para uma classe grande de programas executando em uma placa Odroid XU4, superando outras técnicas como o GTS da ARM ou o CHOAMP, um escalonador estático lançado recentemente.pt_BR
dc.description.resumoHeterogeneous multicore systems, such as the ARM big.LITTLE, feature a single instruction set with different types of processors to conciliate high performance with low energy consumption. An important question concerning such systems is how to determine the best hardware configuration for a particular program execution. The hardware configuration consists of the type and the frequency of the processors that the program can use at runtime. Current solutions are either completely dynamic, e.g., based on in-vivo profiling, or completely static, based on supervised machine learning approaches. Whereas the former solution might bring unwanted runtime overhead, the latter fails to account for the diversity in program inputs. In this dissertation, we show how to circumvent this last shortcoming. To this end, we provide a suite of code transformation techniques that perform numeric regression on function arguments, which can have either scalar or aggregate types, so as to match parameters with ideal hardware configurations at runtime. We have designed and implemented our approach on top of the Soot compilation infrastructure, and have applied it onto programs available in the PBBS and Renaissance suites. We show that we can consistently predict the best configuration for a large class of programs running on an Odroid XU4 board, outperforming other techniques such as ARM’s GTS or CHOAMP, a recently released static program scheduler.pt_BR
dc.description.sponsorshipFAPEMIG - Fundação de Amparo à Pesquisa do Estado de Minas Geraispt_BR
dc.description.sponsorshipOutra Agênciapt_BR
dc.languageengpt_BR
dc.publisherUniversidade Federal de Minas Geraispt_BR
dc.publisher.countryBrasilpt_BR
dc.publisher.departmentICEX - INSTITUTO DE CIÊNCIAS EXATASpt_BR
dc.publisher.programPrograma de Pós-Graduação em Ciência da Computaçãopt_BR
dc.publisher.initialsUFMGpt_BR
dc.rightsAcesso Abertopt_BR
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/pt/*
dc.subjectRegressionpt_BR
dc.subjectFunctionpt_BR
dc.subjectHeterogeneous Architecturept_BR
dc.subjectCompilerspt_BR
dc.subjectbig.LITTLEpt_BR
dc.subject.otherComputação – Tesespt_BR
dc.subject.otherCompiladores (Computadores) – Tesespt_BR
dc.subject.otherEscalonamento de processos – Tesespt_BR
dc.subject.otherOtimização combinatoria – Tesespt_BR
dc.subject.otherAnálise de regressão – Tesespt_BR
dc.titleScheduling in heterogeneous architectures via multivariate linear regression on function inputspt_BR
dc.title.alternativeEscalonamento de código em arquiteturas heterogêneas via regressão linear multivariável sobre parâmetros de funçõespt_BR
dc.typeDissertaçãopt_BR
Appears in Collections:Dissertações de Mestrado

Files in This Item:
File Description SizeFormat 
Dissertacao-Formatada-2022-v2.pdfVersao atualizada seguindo diretrizes para normalizacao3.7 MBAdobe PDFView/Open


This item is licensed under a Creative Commons License Creative Commons