MPI2.NET : criação dinâmica de tarefas com orientação a objetos / MPI2.NET: dynamic tasks creation with object orientation
AUTOR(ES)
Afonso, Fernando Abrahão
DATA DE PUBLICAÇÃO
2010
RESUMO
Message Passing Interface (MPI) é o padrão de facto para o desenvolvimento de aplicações paralelas e de alto desempenho que executem em clusters. O padrão define APIs para as linguagens de programação Fortran, C e C++. Por outro lado a programação orientada a objetos é o paradigma de programação dominante atualmente, onde linguagens de programação como Java e C# têm se tornado muito populares. Isso se deve às abstrações voltadas para facilitar a programação oriundas dessas linguagens de programação, permitindo um ciclo de programação/manutenção mais eficiente. Devido a isso, diversas bibliotecas MPI para essas linguagens emergiram. Dentre elas, pode-se destacar a biblioteca MPI.NET, para a linguagem de programação C#, que possui a melhor relação entre abstração e desempenho. Na computação paralela, o modelo utilizado para o desenvolvimento das aplicações é muito importante, sendo que o modelo Divisão & Conquista é escalável, aplicável a diversos problemas e permite a execução eficiente de aplicações cuja carga de trabalho é desconhecida ou irregular. Para programar utilizando esse modelo é necessário que o ambiente de execução suporte dinamismo, o que não é suportado pela biblioteca MPI.NET. Desse cenário emerge a principal motivação desse trabalho, cujo objetivo é explorar a criação dinâmica de tarefas na biblioteca MPI.NET. Ao final, foi possível obter uma biblioteca com desempenho competitivo em relação ao desempenho das bibliotecas MPI para C++.
ASSUNTO(S)
processamento : alto desempenho dynamic tasks creation mpi high performance computing processamento paralelo mpi parallel computing
ACESSO AO ARTIGO
http://hdl.handle.net/10183/26952Documentos Relacionados
- Lop : uma abordagem unificada de especificação algébrica, orientação a objetos e processos
- LISP: LANGUAGE WITH OBJECT ORIENTED EXTENSIONS
- Simulação de objetos deformáveis baseada na análise dinâmica
- Controle de granularidade com threads em programas MPI dinâmicos
- Alocação dinâmica de tarefas periódicas em NoCs malha com redução do consumo de energia