Please use this identifier to cite or link to this item: http://hdl.handle.net/10216/90736
Author(s): João Manuel Ferreira Trindade
Title: Representação de aplicações C/C++ segundo um grafo para execução em sistemas heterogéneos
Issue Date: 2016-07-05
Abstract: São cada vez mais as areas de investigação que recorrem a sistemas computacionais de elevada performance para resolver complexos modelos matemáticos. Para dar resposta a problemas cada vez mais complicados, tem havido um grande desenvolvimento no hardware para os sistemas computacionais de elevado desempenho, tecnologias como CUDA - Compute Unified Device Architecture - ou FPGA - Field-programmable gate array - têm-se tornado parte integrante dos tradicionais clusters informáticos. Dando assim origem a sistemas denominados heterogéneos. Dadas as especificidades deste tipo de infraestruturas, é necessário repensar a forma de execução de tarefas, de forma a garantir um proveito significativo das novas soluções: conseguir mapear inteligentemente tarefas com os recursos que melhor as consigam resolver permite obter, não só um melhor desempenho computacional, mas também reduzir custos energéticos do sistema. Esta dissertação pretende explorar uma forma de representação de código C/C++ através de grafos dirigidos que permitam posteriormente a utilização de algoritmos de escalonamento para sistemas heterogéneos (PEFT, HEFT, etc.). Para isso, propõe-se uma analise e identificação de regiões criticas através da árvore sintática abstrata (AST) obtida da compilação do código com o compilador Clang. Esta analise, juntamente com informação obtida de modelos computacionais, permitem então gerar perfis otimizados para a execução do código. Pretende-se assim, obter uma ferramenta que tendo em conta a especificidade do código a executar, e a arquitetura do ambiente de execução produza um grafo que represente as várias tarefas de um programa, as suas dependências e as comunicações de dados necessários entre as várias tarefas. Este grafo possibilita posteriormente a utilização de algoritmos de escalonamento que otimizam a sua execução numa arquitetura heterogénea.
Subject: Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
TID identifier : 201307596
URI: http://hdl.handle.net/10216/90736
Document Type: Dissertação
Rights: openAccess
License: https://creativecommons.org/licenses/by-nc/4.0/
Appears in Collections:FEUP - Dissertação

Files in This Item:
File Description SizeFormat 
149903.pdfRepresentação de aplicações C/C++ segundo um grafo para execução em sistemas heterogéneos3.02 MBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons