Document details

Um middleware para computação paralela em clusters de multicores

Author(s): Saramago, João André Figueiredo Gonçalves

Date: 2012

Persistent ID: http://hdl.handle.net/10362/7776

Origin: Repositório Institucional da UNL

Subject(s): Computação paralela; Clusters de multi-cores; Middleware


Description

Dissertação para obtenção do Grau de Mestre em Engenharia Informática

A boa relação custo/performance dos aglomerados (clusters) de processadores multicore popularizou este tipo de plataforma no âmbito da High Performance Computing (HPC)- Computação de Alta Performance. No entanto, a programação de clusters é complexa, requerendo a consciência da sua arquitetura, o que prejudica o desenvolvimento, portabilidade e manutenção das aplicações. No caso particular dos clusters de multi-cores, esta complexidade aumenta quando os nós que compõem o cluster não são uniformes, quer no número de cores, quer na hierarquia de memórias cache. Este tipo de arquitetura já foi apelidada de Non-Uniform Cluster Computing (NUCC) [CGS+05], pois conjuga os conceitos de clustering e acesso não uniforme à memória. Neste contexto, é essencial o desenvolvimento de ferramentas que proporcionem níveis de abstração mais elevados, escondendo os detalhes subjacentes à arquitetura e às tecnologias necessárias à comunicação, escalonamento de tarefas, consistência de memória,entre outros. O trabalho desenvolvido pretende contribuir para o avanço do estado da arte nessa área. Propõe-se um middleware para programação paralela especialmente vocacionado para clusters de multi-cores, cujo desenho é inspirado no de Sistemas de Operação, no sentido de que, além de definir uma interface para as aplicações, define outra para o desenvolvimento de novos módulos (drivers) que permitem a especialização das suas funcionalidades para uma dada arquitetura alvo. O trabalho partiu de uma base já existente para memória partilhada, tendo sido estendido para arquiteturas de memória distribuída. Para tal, foram especializadas as camadas de interface, de suporte base e drivers para suportar estas arquiteturas, nomeadamente clusters de multi-cores.

Document Type Master thesis
Language Portuguese
Advisor(s) Paulino, Hervé
Contributor(s) RUN
facebook logo  linkedin logo  twitter logo 
mendeley logo

Related documents

No related documents