Estudos de algumas ferramentas de coleta e visualização de dados e desempenho de aplicações paralelas no ambiente MPI

AUTOR(ES)
DATA DE PUBLICAÇÃO

2003

RESUMO

Os últimos anos têm apresentado um aumento na aceitação e adoção do processamento paralelo, tanto para computação científica de alto desempenho como para aplicações de propósito geral. Essa aceitação tem sido favorecida principalmente pelo desenvolvimento dos ambientes com processamento maciçamente paralelo (MPP - Massively Parallel Processing) e da computação distribuída. Um ponto comum entre sistemas distribuídos e arquiteturas MPPs é a noção de troca de mensagem, que permite a comunicação entre processos. Um ambiente de troca de mensagem consiste basicamente de uma biblioteca de comunicação que, atuando como uma extensão das linguagens de programação, permite a elaboração de aplicações paralelas, tais como C, C++ e Fortran. No desenvolvimento de aplicações paralelas, um aspecto fundamental esta ligado à análise de desempenho das mesmas. Várias podem ser as métricas utilizadas nesta análise: tempo de execução, eficiência na utilização dos elementos de processamento, escalabilidade da aplicação com respeito ao aumento no número de processadores ou ao aumento da instância do problema tratado. O estabelecimento de modelos ou mecanismos que permitam esta análise pode ser uma tarefa bastante complicada considerando-se parâmetros e graus de liberdade envolvidos na implementação da aplicação paralela. Uma alternativa encontrada tem sido a utilização de ferramentas de coleta e visualização de dados de desempenho, que permitem ao usuário identificar pontos de estrangulamento e fontes de ineficiência em uma aplicação. Para uma visualização eficiente torna-se necessário identificar e coletar dados relativos à execução da aplicação, etapa esta denominada instrumentação. Neste trabalho é apresentado, inicialmente, um estudo das principais técnicas utilizadas na coleta dos dados de desempenho, e em seguida é feita uma análise detalhada das principais ferramentas disponíveis que podem ser utilizadas em arquiteturas paralelas do tipo Cluster Beowulf com Linux sobre plataforma X86 utilizando bibliotecas de comunicação baseadas em aplicações MPI - Message Passing Interface, tais como LAM e MPICH . Esta análise é validada sobre aplicações paralelas que tratam do problema do treinamento de redes neurais do tipo perceptrons usando retropropagação. As conclusões obtidas mostram as potencialidade e facilidades das ferramentas analisadas.

ASSUNTO(S)

engenharia eletrica cluster beowulf analysis of performance parallel processing processamento paralelo mpi- message passing interface cluster beowulf mpi- message passing interface análise de desempenho

Documentos Relacionados