Implementação de uma Linguagem de Especificação de Aplicações Paralelas Baseada em XML para o Sistema JoiN
Resumo
Vários sistemas de grid e de computação distribuída existentes permitem a execução de aplicações com um fluxo básico, em que é feita a distribuição das tarefas para que sejam executadas em paralelo e depois a coleta dos resultados. Outros sistemas permitem definir uma relação de dependência de execução entre as tarefas, formando um grafo direcionado acíclico. Porém, mesmo com esse modelo, não é possível executar vários tipos de aplicações paralelas, como, por exemplo, algoritmos genéticos e de cálculo numérico que utilizam algum processamento iterativo. E é neste caso que se enquadra o sistema JoiN de processamento paralelo. Neste artigo é apresentada a implementação no sistema JoiN de uma nova linguagem de especificação de fluxo de execução de aplicações paralelas que permite um controle de fluxo mais flexível, viabilizando desvios condicionais e laços com iterações controladas. Os resultados mostram que, com a implementação desta nova linguagem, foi possível criar, com baixo custo, aplicações que antes eram consideradas impossíveis ou inadequadas para execução neste sistema.
Referências
D. Anderson, J. Cobb, E. Korpela, M. Lebofsky and D. Werthimer, "SETI@home: An experiment in public resource computing", Communications of the ACM, Vol.45 No. ll, pp 56-61, Nov. 2002.
D. Anderson. "Public Computing: Reconnecting People to Science", Conference on Shared Knowledge and the Web, Residencia de Estudiantes, Madri, Espanha, Nov. 2003.
C. Enomoto and M. A. A. Henriques, "A Flexible Specification Model based on XML for Parallel Applications", 17th International Symposium on Computer Architecture and High Performance Computing - SBACPAD, Rio de Janeiro, 2005.
E. J. H. Yero, F. O. Lucchese. F. S. Sambatti and M. A. A. Henriques., "Join: The Implementation of a Java-based Massively Parallel Grid", Future Generation Computing Systems, Elsevier. Vol. 21, pp. 79 1-8 10, 2005.
F. O. Lucchese, "Um Mecanismo para Distribuição de Carga em Ambientes Virtuais de Computação Maciçamente Paralela", dissertação de mestrado, Faculdade de Engenharia Elétrica e de Computação- Unicamp, 2002. (7) O. Prado, F. J. Von Zuben, M. A. A. Henriques. "PTP and JoiN as Software Packages for Phylogenetic Inference", Conferência Internacional de Bioin.formática e Biologia Computacional, Ribeirão Preto, Brasil, Mai. 2003.
"GAJIT - Simple Java Genetic Algorithm Package" home page http://www.micropraxis.com/gajit/, último acesso em Ago. 2005.