Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/27847
Título: | An evaluation of the GAMA/StarPU frameworks for heterogeneous platforms : the progressive photon mapping algorithm |
Autor(es): | Palhas, Miguel Branco |
Orientador(es): | Proença, Alberto José Santos, Luís Paulo |
Data: | 2013 |
Resumo(s): | Recent evolution of high performance computing moved towards heterogeneous platforms:
multiple devices with different architectures, characteristics and programming models, share
application workloads. To aid the programmer to efficiently explore these heterogeneous
platforms several frameworks have been under development. These dynamically manage the
available computing resources through workload scheduling and data distribution, dealing
with the inherent difficulties of different programming models and memory accesses. Among
other frameworks, these include GAMA and StarPU.
The GAMA framework aims to unify the multiple execution and memory models of
each different device in a computer system, into a single, hardware agnostic model. It was
designed to efficiently manage resources with both regular and irregular applications, and
currently only supports conventional CPU devices and CUDA-enabled accelerators. StarPU
has similar goals and features with a wider user based community, but it lacks a single
programming model.
The main goal of this dissertation was an in-depth evaluation of a heterogeneous framework
using a complex application as a case study. GAMA provided the starting vehicle
for training, while StarPU was the selected framework for a thorough evaluation. The progressive
photon mapping irregular algorithm was the selected case study. The evaluation
goal was to assert the StarPU effectiveness with a robust irregular application, and make a
high-level comparison with the still under development GAMA, to provide some guidelines
for GAMA improvement.
Results show that two main factors contribute to the performance of applications written
with StarPU: the consideration of data transfers in the performance model, and chosen
scheduler. The study also allowed some caveats to be found within the StarPU API. Although
this have no effect on performance, they present a challenge for new coming developers.
Both these analysis resulted in a better understanding of the framework, and a comparative
analysis with GAMA could be made, pointing out the aspects where GAMA could be further
improved upon. A recente evolução da computação de alto desempenho é em direção ao uso de plataformas heterogéneas: múltiplos dispositivos com diferentes arquiteturas, características e modelos de programação, partilhando a carga computacional das aplicações. De modo a ajudar o programador a explorar eficientemente estas plataformas, várias frameworks têm sido desenvolvidas. Estas frameworks gerem os recursos computacionais disponíveis, tratando das dificuldades inerentes dos diferentes modelos de programação e acessos à memória. Entre outras frameworks, estas incluem o GAMA e o StarPU. O GAMA tem o objetivo de unificar os múltiplos modelos de execução e memória de cada dispositivo diferente num sistema computacional, transformando-os num único modelo, independente do hardware utilizado. A framework foi desenhada de forma a gerir eficientemente os recursos, tanto para aplicações regulares como irregulares, e atualmente suporta apenas CPUs convencionais e aceleradores CUDA. O StarPU tem objetivos e funcionalidades idênticos, e também uma comunidade mais alargada, mas não possui um modelo de programação único O objetivo principal desta dissertação foi uma avaliação profunda de uma framework heterogénea, usando uma aplicação complexa como caso de estudo. O GAMA serviu como ponto de partida para treino e ambientação, enquanto que o StarPU foi a framework selecionada para uma avaliação mais profunda. O algoritmo irregular de progressive photon mapping foi o caso de estudo escolhido. O objetivo da avaliação foi determinar a eficácia do StarPU com uma aplicação robusta, e fazer uma análise de alto nível com o GAMA, que ainda está em desenvolvimento, para forma a providenciar algumas sugestões para o seu melhoramento. Os resultados mostram que são dois os principais factores que contribuem para a performance de aplicação escritas com auxílio do StarPU: a avaliação dos tempos de transferência de dados no modelo de performance, e a escolha do escalonador. O estudo permitiu também avaliar algumas lacunas na API do StarPU. Embora estas não tenham efeitos visíveis na eficiencia da framework, eles tornam-se um desafio para recém-chegados ao StarPU. Ambas estas análisos resultaram numa melhor compreensão da framework, e numa análise comparativa com o GAMA, onde são apontados os possíveis aspectos que o este tem a melhorar. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado em Engenharia Informática |
URI: | https://hdl.handle.net/1822/27847 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
eeum_di_dissertacao_pg19808.pdf | 4,32 MB | Adobe PDF | Ver/Abrir |