Please use this identifier to cite or link to this item: https://hdl.handle.net/10216/85318
Full metadata record
DC FieldValueLanguage
dc.creatorEduardo Luís Loureiro Fernandes
dc.date.accessioned2025-11-11T19:28:56Z-
dc.date.available2025-11-11T19:28:56Z-
dc.date.issued2016-07-05
dc.date.submitted2016-09-03
dc.identifier.othersigarra:142702
dc.identifier.urihttps://hdl.handle.net/10216/85318-
dc.descriptionAtualmente os computadores, sejam eles pessoais ou um nó contido num sistema de várias máquinas, podem conter vários tipos de arquiteturas: desde os tradicionais CPUs com um único core de execução, aos agora comuns multi-core, às placas gráficas com milhares de cores, FPGAs, DSPs entre outros. É também necessário ter em conta que os cores não são todos iguais, por exemplo os cores de um CPU são bastante diferentes dos cores dos GPUs. Com isto surge um novo problema: tirar proveito destas novas arquiteturas de maneira eficiente, ou seja sem desperdiçar energia e/ou tempo. Uma maneira de o fazer é distribuir certas tarefas para a arquitetura mais eficaz de as executar. Por exemplo certas operações são extremamente paralelizáveis, ou seja suscetíveis de serem subdivididas em várias tarefas pequenas, como certas operações em processamento de imagem. No entanto é necessário fazer alterações nos programas já existentes para se poder aproveitar ao máximo o poder computacional que as diferentes arquiteturas providenciam. Um problema muitas vezes esquecido são os tempos de acesso à memória que também influência bastante os tempos de execução de determinadas tarefas. Trabalhos anteriores mostram claras vantagens em utilizar determinadas arquiteturas em conjunção com determinadas tarefas. Assim a solução consiste em escalonar uma ou mais aplicações descritas num grafo onde cada nó representa uma determinada tarefa a executar, isto tendo em conta as interdependências de informação necessária para as diversas tarefas da aplicação. Para analisar se efetivamente estão a ser obtidas melhorias iram ser feitas medições de consumo de energia e através de modelos já existentes irá simular-se para verificar se os resultados correspondem ao que irá ser obtido. Nesta componente de simulação já existem ferramentas disponíveis como o SIMGRID. Com este trabalho espera se obter um impacto positivo na forma como as tarefas são distribuídas, ou seja obter poupanças de energia e de tempo.
dc.description.abstractNowadays computers, be they personal or a node contained in a multi machine environment, can contain different kinds of architectures: form the traditional CPU with a single execution core to the now common multi-core CPU, GPUs with thousands of cores, FPGAs, DSPs among others. It is also required to be aware that the various processing cores aren't equal. CPU cores are very different from GPU cores. With this a new problem emerges: leveraging this new architectures in an efficient way, without wasting energy and/or time. One way to achieve this is to distribute certain tasks to the most efficient architecture for that specific task. For instance some operations are extremely parallelizable, susceptible to be divided em various small tasks, like some operations in image processing. However changes are needed in already existing programs so that the maximum computing power that different architectures provide can be leveraged. One problem that many times is forgotten is the memory access times that heavily influence the execution times of some tasks. Previous work show that big advantages can be obtained in using some architectures to do some specific tasks. The proposed solution consists in scaling one or more applications described in a graph, where each vertex represents a task to execute and each edge represents the interdependencies of data needed for the diverse application tasks. In order to analyse if improvements are being obtained, energy consumption measurements will be carried out. Simulations will be used to check if the results correspond to what will be obtained. In the simulation component of this work tools like SimGrid will be used. With this work it is expected to obtain a positive impact on the way that tasks are distributed, obtaining power and time savings.
dc.language.isoeng
dc.rightsopenAccess
dc.rights.urihttps://creativecommons.org/licenses/by-nc/4.0/
dc.subjectEngenharia electrotécnica, electrónica e informática
dc.subjectElectrical engineering, Electronic engineering, Information engineering
dc.titleEnergy-aware resource management for heterogeneous systems
dc.typeDissertação
dc.contributor.uportoFaculdade de Engenharia
dc.identifier.doi10.34626/w698-7c95
dc.identifier.tid201302020
dc.subject.fosCiências da engenharia e tecnologias::Engenharia electrotécnica, electrónica e informática
dc.subject.fosEngineering and technology::Electrical engineering, Electronic engineering, Information engineering
thesis.degree.disciplineMestrado Integrado em Engenharia Informática e Computação
thesis.degree.grantorFaculdade de Engenharia
thesis.degree.grantorUniversidade do Porto
thesis.degree.level1
Appears in Collections:FEUP - Dissertação

Files in This Item:
File Description SizeFormat 
142702.pdfEnergy-awareresourcemanagementfor heterogeneous systems781.12 kBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons