• Nenhum resultado encontrado

5.3 Arquitetura

5.3.1 Vis˜ao Geral

A arquitetura de InGriDE e os componentes externos com os quais ela interage formam uma estrutura organizada em camadas. Nessa estrutura cada camada oferece servi¸cos `a camada imediatamente superior `a sua.

Conforme ilustrado na Figura 12 nossa solu¸c˜ao foi divida em duas partes: InGriDE e aInteGrade Application Toolkit (IAT). InGriDE foi dividida em duas camadas: UI, a interface com usu´ario eCore, as classes respons´aveis pela intera¸c˜ao com IAT. As classes da camada UI usam osextension-points do Eclipse para a constru¸c˜ao da interface com o usu´ario. J´a as classes da camada Core fornecem toda a l´ogica necess´aria para as classes de UI.

IAT ´e uma interface cujo desenvolvimento vai ser feito baseado na interface GAT do projeto GridLab. O objetivo de IAT ´e ser uma interface muito parecida com GAT, s´o que bem mais simples para facilitar a integra¸c˜ao com InteGrade. Apesar da sua simplicidade, IAT vai ser desenvolvida com a preocupa¸c˜ao em uma futura adapta¸c˜ao de InGriDE a GAT. Para alcan¸car este objetivo vamos utilizar ao m´aximo as interfaces de GAT. A simplifica¸c˜ao do projeto vai fazer IAT diferir de GAT em dois aspectos. O primeiro est´a relacionado `a quantidade de fun¸c˜oes dispon´ıveis na biblioteca, IAT ser´a apenas um subconjunto de GAT. O segundo ´e que IAT vai ser desenvolvida sem fornecer integra¸c˜ao `a diferentes middlewares, apenas `a InteGrade. O acesso de IAT aos servi¸cos da Grade ser´a fornecido pelaInteGrade Client API (Figura 12).

A InteGrade Client API ´e uma biblioteca espec´ıfica do projeto InteGrade que possi-bilita o acesso aos servi¸cos da Grade do nosso estudo de caso. Esta biblioteca ´e a ´ultima camada do ambiente local de computa¸c˜ao e usa a tecnologia de interliga¸c˜ao de objetos distribu´ıdos CORBA [OMG02] para a comunica¸c˜ao com InteGrade. Esta tecnologia ´e utilizada como base de comunica¸c˜ao do sistema InteGrade.

5.3.2 Projeto de InGriDE

Pensando na complexidade da intera¸c˜ao com os diferentes ambientes de execu¸c˜ao, projetamos InGriDE baseado no projeto Eclipse Parallel Tools Platform [Wat05], que

Figura 12: Arquitetura do InGriDE.

sugere o uso de um modelo de abstra¸c˜ao para os ambientes de execu¸c˜ao paralela. Se-guindo essa linha, projetamos um modelo de abstra¸c˜ao da Grade com um ´unico ponto de acesso ao ambiente externo (Figura 13).

O projeto de InGriDE ´e composto por quatro componentes que s˜ao descritos a seguir:

Grid Runtime Model: mant´em um modelo local que representa o estado externo de componentes da Grade tais como recursos e tarefas em execu¸c˜ao.

Grid Runtime Controller: controla a intera¸c˜ao entre os componentes de InGriDE e o ambiente externo de execu¸c˜ao, representado por IAT. Este ´e o ´unico ponto de acesso de InGriDE ao ambiente externo.

Grid User Interface: cont´em os componentes da interface gr´afica com o usu´ario, desenvolvidos a partir dos extension-points da plataforma Eclipse. Alguns exem-plos s˜ao: InteGrade BSP Editor, InteGrade Servers View, Grid Execution View, InteGrade Development Perspective, Application Repository View e Cluster View.

Os dois ´ultimos ainda n˜ao foram desenvolvidos.

Grid Launch Configuration: usa o arcabou¸co de lan¸camento de aplica¸c˜oes do Eclipse para gerenciar a execu¸c˜ao das aplica¸c˜oes na Grade. ´E usado para a especifica¸c˜ao dos requisitos de execu¸c˜ao da aplica¸c˜ao. Este componente passa essas informa¸c˜oes ao Runtime Controller que a submete ao ambiente externo de execu¸c˜ao. Ap´os isso, o usu´ario pode monitorar a execu¸c˜ao desta tarefa no Grid Execution View.

Figura 13: InGriDE Design.

5.4 Funcionalidades

A defini¸c˜ao das funcionalidades a serem oferecidas por InGriDE foi feita levando em considera¸c˜ao as funcionalidades das ferramentas encontradas na literatura e um levan-tamento de necessidades feito junto aos integrantes do grupo de pesquisa do InteGrade.

A Figura 14 mostra o ambiente de InGriDE composto de algumas janelas (views) que cont´em informa¸c˜oes ´uteis para os usu´arios. As principais funcionalidades propostas para InGriDE s˜ao descritas a seguir.

Submiss˜ao de tarefas na Grade: A submiss˜ao de uma aplica¸c˜ao para execu¸c˜ao na Grade pode ser feita atrav´es de componentes da GUI de InGriDE. No caso espec´ıfico do InteGrade, o desenvolvedor interage com o Protocolo de Reserva de Recursos e Execu¸c˜ao de Aplica¸c˜oes. Neste protocolo, a aplica¸c˜ao ´e submetida a um componente do InteGrade (GRM) que trata as quest˜oes de atribui¸c˜ao de tarefas, transferˆencia de arquivos e a pr´opria execu¸c˜ao das aplica¸c˜oes.

Busca de recursos na Grade: InGriDE fornece a visualiza¸c˜ao de informa¸c˜oes dos recursos de um ou mais aglomerados da Grade. O usu´ario pode aplicar filtros aos recursos, obtendo assim uma vis˜ao dos recursos que realmente atendam aos seus requisitos como, por exemplo, a quantidade m´ınima de mem´oria e velocidade do processador.

Monitoramento da execu¸c˜ao de aplica¸c˜oes na Grade: O monitoramento da execu¸c˜ao das aplica¸c˜oes ´e um requisito importante para os usu´arios da Grade. InGriDE possibilita a obten¸c˜ao da informa¸c˜ao do estado das aplica¸c˜oes submetidas (exe-cutando ou terminada), bem como os dados resultantes da execu¸c˜ao. ´E poss´ıvel tamb´em terminar a execu¸c˜ao de uma aplica¸c˜ao a qualquer momento da execu¸c˜ao.

Figura 14: Ambiente do InGriDE.

Na Figura 14, a janela Grid Execution View mostra algumas submiss˜oes feitas pelo usu´ario da Grade.

Intera¸c˜ao com o Ambiente de Execu¸c˜ao: A intera¸c˜ao com o ambiente de execu¸c˜ao permite que o desenvolvedor possa monitorar o estado dos servi¸cos da grade, bem como interagir com esses servi¸cos. A Figura 14 mostra o caso espec´ıfico do InteGrade, a janela mais `a direita mostra duas Grades registradas, uma local e outra no laborat´orio LCPD, ambas com os trˆes servi¸cos do InteGrade.

Editor de c´odigo com verifica¸c˜ao de consistˆencia: No caso espec´ıfico do InteGrade, a verifica¸c˜ao de consistˆencia do c´odigo escrito pelos desenvolvedores de aplica¸c˜oes paralelas baseia-se no modelo de programa¸c˜ao BSP [Val90]. InteGrade fornece uma biblioteca de programa¸c˜ao paralela chamada BSPLib que cont´em m´etodos espec´ıficos para este tipo de aplica¸c˜ao. InGriDE deve permitir que o desenvolvedor verifique a corretude da semˆantica do c´odigo escrito com base no modelo BSP.

Este editor j´a oferece facilidades como Syntax Highlight e Code Completion para

os m´etodos da BSPLib estendendo o plugin CDT (C/C++ Development Tools) [CDT06].

Obten¸c˜ao de estat´ısticas de execu¸c˜ao: Ap´os o t´ermino da execu¸c˜ao das aplica¸c˜oes na Grade, o usu´ario pode visualizar gr´aficos com informa¸c˜oes dos recursos utili-zados durante a execu¸c˜ao.

Facilidades para Simula¸c˜oes: O ambiente deve fornecer facilidades similares `as dispon´ıveis nas ferramentas para desenvolvimento de PSAs (Se¸c˜ao 3.4), como por exemplo a cria¸c˜ao de um conjunto de entradas parametrizadas. Al´em disso, deve possibilitar a programa¸c˜ao de v´arias submiss˜oes.

Visualiza¸c˜ao das informa¸c˜oes de padr˜oes de uso: InGriDE deve disponibilizar os dados consolidados dos padr˜oes de uso identificados na Grade de forma a permitir que os usu´arios possam, por exemplo, escolher os melhores hor´arios para execu¸c˜ao de suas aplica¸c˜oes. Esta funcionalidade deve levar em considera¸c˜ao a privacidade dos usu´arios.

Instrumenta¸c˜ao de c´odigo para checkpointing: Visa fornecer uma interface que permita o processamento da instrumenta¸c˜ao de c´odigo para ocheckpointing. Tamb´em

´e proposto um editor que permita uma visualiza¸c˜ao amig´avel do c´odigo instru-mentado.

InGriDE est´a em fase de desenvolvimento. Na primeira fase do projeto foram de-senvolvidas algumas funcionalidades para atender `as necessidades da comunidade do projeto InteGrade. Da lista apresentada acima j´a est˜ao dispon´ıveis: parte da sub-miss˜ao, o monitoramento, a intera¸c˜ao com o ambiente de execu¸c˜ao e parte do editor.

Entretanto, a implementa¸c˜ao destas funcionalidades n˜ao obedeceu a arquitetura pro-posta nesta se¸c˜ao, principalmente no que se refere `a intera¸c˜ao com o middleware. O resultado disso ´e o forte acoplamento existente entre a implementa¸c˜ao atual e o mid-dleware InteGrade.

Iniciaremos a segunda fase do projeto, que se inicia a partir deste ponto, com a adapta¸c˜ao do c´odigo atual `a arquitetura aqui apresentada, e em seguida daremos con-tinuidade com as atividades que ser˜ao descritas na se¸c˜ao 6.

5.5 Integra¸c˜ ao com outras Grades

A solu¸c˜ao escolhida para buscar a portabilidade das aplica¸c˜oes desenvolvidas em InGriDE foi baseada no conceito da Grid Application Toolkit (GAT) do projeto Gri-dLab. Esta solu¸c˜ao vem sendo usado em grandes projetos como P-GRADE, Triana, GridSphere, Cactus e Einstein@home [GAT06], al´em de ter dado origem ao grupo

SAGA [GGF03] do GGF. Em poucas palavras, a id´eia de GAT ´e desempenhar na Grade o mesmo papel que MPI e PVM desempenham na programa¸c˜ao paralela. Desta forma, conforme descrito na se¸c˜ao 2.7.1, a aplica¸c˜ao escrita para GAT pode executar em qualquer middleware que forne¸ca os seus adaptadores espec´ıficos. Assim, caso In-GriDE fosse desenvolvida baseada em GAT j´a estaria atendendo aos sistemas Globus, GridLab, e outros que viessem a ter os adaptadores para GAT.

Levando em conta que um dos objetivos do projeto ´e atender `a comunidade do projeto InteGrade, a implementa¸c˜ao da solu¸c˜ao ideal, InGriDE usando GAT, seria composta de duas atividades. A primeira seria a implementa¸c˜ao dos adaptadores es-pec´ıficos de InteGrade para GAT. A segunda seria implementar InGriDE baseada em GAT, o que implicaria em estar condicionado a adotar a solu¸c˜ao completa de GAT, correndo o risco de encontrar incompatibilidades entre GAT e InteGrade que levariam mais tempo para viabilizar a solu¸c˜ao.

Por outro lado, utilizando a abordagem proposta na se¸c˜ao 5.3, o desenvolvimento dos adaptadores seria evitado, ao pre¸co da solu¸c˜ao estar restrita ao middleware InteGrade.

A proposta tamb´em substitui GAT por IAT, aproveitando ao m´aximo as interfaces de GAT. Este recurso permite que InGriDE tenha apenas a dependˆencia de interface e n˜ao de implementa¸c˜ao em rela¸c˜ao `a IAT, o que gera um fraco acoplamento entre eles. Com isso, uma futura adequa¸c˜ao de InGriDE `a solu¸c˜ao ideal, com o uso da GAT original, teria o impacto bastante minimizado. O confronto da solu¸c˜ao ideal com a proposta simplificada ´e ilustrada na Figura 15.

Figura 15: Confronto da Solu¸c˜ao Ideal com a Simplificada.

6 Plano de Trabalho

Nesta se¸c˜ao apresentaremos o plano de trabalho proposto para atingir os objetivos do projeto descrito neste documento.

6.1 Descri¸c˜ ao das Atividades

Dando continuidade ao desenvolvimento de InGriDE, primeiramente vamos ade-quar a implementa¸c˜ao atual `a arquitetura aqui proposta. Para isto construiremos a InteGrade Application Toolkit (IAT) e logo em seguida faremos a refatora¸c˜ao do c´odigo atual.

Para atender `a demanda do projeto InteGrade, faremos melhorias nas funcionalida-des atuais com o objetivo de disponibilizar uma vers˜ao bem testada para os usu´arios do projeto. Neste ponto, pretendemos criar um projeto na Incubadora Virtual da Fapesp para utilizar os recursos disponibilizados pelo portal tais como o controle de vers˜oes, gerenciamento de defeitos, interface para requisi¸c˜ao de funcionalidades, f´orum, estat´ısticas de acesso, dentre outros. Esperamos que o uso desta ferramenta facilite a nossa comunica¸c˜ao com os usu´arios do sistema.

Finalmente, desenvolveremos novas funcionalidades para InGriDE, algumas dessas descritas na se¸c˜ao 5.4, e caso haja tempo, pretendemos construir um portal para o InteGrade baseado no arcabou¸co GridSphere. Para isso planejamos desenvolver alguns portlets b´asicos para o InteGrade e compat´ıveis com a especifica¸c˜ao JSR168.

6.2 Cronograma

Apresentamos a seguir um cronograma contendo as atividades a serem desenvolvidas at´e a conclus˜ao do trabalho.

Tabela 1: Cronograma de Atividades

Atividade Fev Mar Abr Mai Jun Jul

Constru¸c˜ao da InteGrade Application Toolkit x x

Adequa¸c˜ao da implementa¸c˜ao atual `a arquitetura proposta x

Melhorias nas funcionalidades atuais x x

Disponibiliza¸c˜ao de uma vers˜ao para o projeto InteGrade x

Cria¸c˜ao do projeto na Incubadora FAPESP x

Desenvolvimento de novas funcionalidades x x

Constru¸c˜ao do Portal InteGrade baseado no arcabou¸co GridSphere x x

Reda¸c˜ao da artigo para conferˆencia internacional x

Reda¸c˜ao da disserta¸c˜ao x x x

Referˆ encias

[ABD+01] Gabrielle Allen, Werner Benger, Thomas Dramlitsch, Tom Goodale, Hans-Christian Hege, Gerd Lanfermann, Andr´e; Merzky, Thomas Radke, Edward Seidel, and John Shalf. Cactus tools for grid applications. Cluster Computing, 4(3):179–188, 2001.

[ACBR03] Nazareno Andrade, Walfredo Cirne, Francisco Brasileiro, and Paulo Roi-senberg. Ourgrid: An approach to easily assemble grids with equitable resource sharing. In Proceedings of the 9th Workshop on Job Scheduling Strategies for Parallel Processing, 2003.

[ACK+02] David P. Anderson, Jeff Cobb, Eric Korpela, Matt Lebofsky, and Dan Werthimer. Seti@home: an experiment in public-resource computing.

Communications of the ACM, 45(11):56–61, 2002.

[ADD+03] Gabrielle Allen, Kelly Davis, Konstantinos N. Dolkas, Nikolaos D. Doula-mis, Tom Goodale, Thilo Kielmann, Andr´e Merzky, Jarek Nabrzyski, Ju-liusz Pukacki, Thomas Radke, Michael Russell, Ed Seidel, John Shalf, and Ian Taylor. Enabling Applications on the Grid: A GridLab Overview. In-ternational Journal of High Performance Computing Applications: Special Issue on Grid Computing: Infrastructure and Applications, 17(4):449–466, November 2003.

[ADG+01] Gabrielle Allen, Thomas Dramlitsch, Tom Goodale, Gerd Lanfermann, Thomas Radke, Ed Seidel, Thilo Kielmann, Kees Verstoep, Zoltan

Ba-laton, Peter Kacsuk, Ferenc Szalai, Joern Gehring, Axel Keller, Achim Streit, Ludek Matyska, Miroslav Ruda, Ales Krenek, Harald Knipp, Andr´e Merzky, Alexander Reinefeld, Florian Schintke, Bogdan Ludwiczak, Jarek Nabrzyski, Juliusz Pukacki, Hans-Peter Kersken, Giovanni Aloisio, Mas-simo Cafaro, Wolfgang Ziegler, and Michael Russell. Early experiences with the egrid testbed. In CCGRID ’01: Proceedings of the 1st Internati-onal Symposium on Cluster Computing and the Grid, page 130, Washing-ton, USA, 2001. IEEE Computer Society.

[ADG+05] Gabrielle Allen, Kelly Davis, Tom Goodale, Andrei Hutanu, Hartmut Kai-ser, Thilo Kielmann, Andre Merzky, Rob van Nieuwpoort, Alexander Rei-nefeld, Florian Schintke, Thorsten Sch¨utt, Ed Seidel, and Brygg Ullmer.

The grid application toolkit: Towards generic and easy application pro-gramming interfaces for the grid. InProceedings of the IEEE, volume 93, pages 534–550, 2005.

[AGG+99] Rob Armstrong, Dennis Gannon, Al Geist, Katarzyna Keahey, Scott Kohn, Lois McInnes, Steve Parker, and Brent Smolinski. Toward a com-mon component architecture for high-performance scientific computing. In HPDC ’99: Proceedings of the The Eighth IEEE International Symposium on High Performance Distributed Computing, page 13, Washington, USA, 1999. IEEE Computer Society.

[AGK00] D. Abramson, J. Giddy, and L. Kotler. High performance parametric modeling with nimrod/G: Killer application for the global grid? pages 520–528, 2000.

[And03] T. Andrews. Business process execution language for web services. Tech-nical report, IBM, 2003. vers˜ao: 1.1.

[And04] David Anderson. BOINC: A System for Public-Resource Computing and Storage. In Proceedings of the Fifth IEEE/ACM International Workshop on Grid Computing, pages 4–10, 2004.

[BBC+01] Fran¸coise Baude, Alexandre Bergel, Denis Caromel, Fabrice Huet, Olivier Nano, and Julien Vayssi`ere. Ic2d: Interactive control and debugging of distribution. In LSSC ’01: Proceedings of the Third International Confe-rence on Large-Scale Scientific Computing-Revised Papers, pages 193–200, London, UK, 2001. Springer-Verlag.

[BBC02] Laurent Baduel, Fran¸coise Baude, and Denis Caromel. Efficient, Flexible, and Typed Group Communications in Java. In Joint ACM Java Grande - ISCOPE 2002 Conference, pages 28–36, Seattle, 2002. ACM Press.

[BBC+03] Braun, Broberg, Cassidy, Freedman, Jones, Schaeck, and Tayar. Web services for remote portlets specification. Technical report, OASIS Orga-nization, 2003.

[BCDH05] Francoise Baude, Denis Caromel, Christian Delb´e, and Ludovic Henrio.

A hybrid message logging-cic protocol for constrained checkpointability.

In Proceedings of EuroPar2005, LNCS, pages 644–653, Lisbon, Portugal, August-September 2005. Springer.

[BCDM04] Henri Bal, Henri Casanova, Jack Dongarra, and Satoshi Matsuoka. The Grid 2: Blueprint for a New Computing Infrastructure, chapter 24, pages 463–489. Morgan Kaufmann Publishers, 2004.

[BCH+02] Fran¸coise Baude, Denis Caromel, Fabrice Huet, Lionel Mestre, and Julien Vayssi`ere. Interactive and descriptor-based deployment of object-oriented grid applications. In HPDC ’02: Proceedings of the 11 th IEEE Interna-tional Symposium on High Performance Distributed Computing HPDC-11 20002 (HPDC’02), page 93, Washington, USA, 2002. IEEE Computer So-ciety.

[BHM+04] D. Booth, H. Haas, F. McCabe, E. Newcomer, M. Champion, C. Ferris, and D. Orchard. Web services architecture. World Wide Web Consortium, Fevereiro de 2004.

[BKPV01] Z. Balaton, P. Kacsuk, N. Podhorszki, and F. Vajda. From cluster monito-ring to grid monitomonito-ring based on grm. InEuro-Par ’01: Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing, pages 874–881, London, UK, 2001. Springer-Verlag.

[boi05] BOINC: Berkeley Open Infrastructure for Network Computing. http:

//boinc.berkeley.edu/, ´Ultimo acesso em novembro/2005.

[Car93] Denis Caromel. Toward a method of object-oriented concurrent program-ming. Communications of the ACM, 36(9):90–102, 1993.

[CB03] H. Casanova and F. Berman. Parameter sweeps on the grid with apst. In T. Hey F. Berman, G. Fox, editor, Grid Computing: Making the Global Infrastructure a Reality. Wiley Publishers, 2003.

[CCSV03] M. Cannataro, C. Comito, F. Schiavo, and P. Veltri. Proteus: a grid based problem solving environment for bionformatics, 2003.

[CCTT02] M. Cannataro, A. Congiusta, D. Talia, and P. Trunfio. A Data Mining Toolset for Distributed High-Performance Platforms. In Proceedings of Data Mining 2002, Bologna, Italy, 2002. Wessex Institute Press.

[CDT06] C/C++ Development Tools. http://www.eclipse.org/cdt/, ´Ultimo acesso em janeiro/2006.

[CGKG04] Raphael Camargo, Andrei Goldchleger, Fabio Kon, and Alfredo Goldman.

Checkpointing-based rollback recovery for parallel applications on the inte-grade grid middleware. ACM/IFIP/USENIX 2nd International Workshop on Middleware for Grid Computing, 2004.

[con05] Condor: High Throughput Computing. http://www.cs.wisc.edu/

condor/, ´Ultimo acesso em novembro/2005.

[DAG05] DAGman. http://www.cs.wisc.edu/condor/dagman, ´Ultimo acesso em setembro/2005.

[Dep03] Marty Humphrey Department. From Legion to Legion-G to OGSI.NET:

Object-based Computing for Grids. In Proceedings of the IPDPS NSF Next Generation Software Workshop, Nice, France, April 2003.

[DGM03] K. Davis, T. Goodale, and A. Merzky. Gat api specifi-cation: Object based. [online], EU Project GridLab, Dis-pon´ıvel: http://www.Gridlab.org/WorkPackages/wp-1/Documents/

Gridlab-1-GAS-0004.O%bjectBasedAPISpecification.pdf, 2003. De-liverable D1.5.

[DGR06] D-Grid Initiative. http://www.d-grid.de/, ´Ultimo acesso em ja-neiro/2006.

[ecl06] Eclipse Project web site. http://www.eclipse.org/, ´Ultimo acesso em janeiro/2006.

[ELvD+96] D. H. J. Epema, M. Livny, R. van Dantzig, X. Evers, and J. Pruyne.

A worldwide flock of condors: load sharing among workstation clusters.

Future Generation Computer Systems, 12(1):53–65, 1996.

[ESC06] UK E-Science Program. http://www.rcuk.ac.uk/escience/, ´Ultimo acesso em janeiro/2006.

[FF99] Geoffrey C. Fox and Wojtek Furmanski. High Performance Commodity Computing. In Ian Foster and Carl Kesselman, editors, The Grid: Blue-print for a new computing infrastructure. Morgam Kaufman, 1999.

[FK97] I. Foster and C. Kesselman. Globus: A metacomputing infrastructure toolkit.The International Journal of Supercomputer Applications and High Performance Computing, 11(2):115–128, Summer 1997.

[FK04] Ian Foster and Carl Kesselman, editors. The Grid 2: Blueprint for a New Computing Infrastructure. Morgan Kaufmann Publishers, 2004.

[FKNT02] I. Foster, C. Kesselman, J. Nick, and S. Tuecke. The physiology of the grid: An open grid services architecture for distributed systems integra-tion, 2002.

[For94] Message Passing Interface Forum. Mpi: A message-passing interface stan-dard. Technical report, Knoxville, USA, 1994.

[Fos05a] I. Foster. A globus toolkit primer: Describing globus toolkit version 4, 2005.

[Fos05b] I. Foster. Globus toolkit version 4: Software for service-oriented systems.

volume 3779, pages 2–13. IFIP International Conference on Network and Parallel Computing, Springer-Verlag LNCS, 2005.

[Fox00] Geoffrey C Fox. Portals for Web Based Education and Computational Science, 2000.

[Fox03] Geoffrey Fox. Grid computing environments. Computing in Science and Engg., 5(2):68–72, 2003.

[FPGT03] G. Fox, M. Pierce, D. Gannon, and M. Thomas. Overview of grid compu-ting environments. Technical report, Global Grid Forum, Fevereiro 2003.

[FTL+02] James Frey, Todd Tannenbaum, Miron Livny, Ian Foster, and Steven Tu-ecke. Condor-g: A computation management agent for multi-institutional grids. Cluster Computing, 5(3):237–246, 2002.

[GAT06] GridLab Collaborations. http://www.gridlab.org/Project/

Collaborations.html, ´Ultimo acesso em janeiro/2006.

[GB04] E. Gamma and K. Beck. Contributing to Eclipse - Principles, Patterns and Plug-Ins. Addison-Wesley, 2004.

[GGF03] GGF. Simple API for Grid Application Research Group. [Online], Dis-pon´ıvel: http://forge.Gridforum.org/projects/saga-rg/, 2003.

[Ggf05] Global Grid Forum. http://www.ggf.org, ´Ultimo acesso em setem-bro/2005.

[Ggf06] Workflow Management Research Group - Global Grid Forum. http://

www.isi.edu/~deelman/wfm-rg/, ´Ultimo acesso em janeiro/2006.

[GHR94] Efstratios Gallopoulos, Elias Houstis, and John R. Rice. Computer as thinker/doer: Problem-solving environments for computational science.

IEEE Comput. Sci. Eng., 1(2):11–23, 1994.

[GKG+04] Andrei Goldchleger, Fabio Kon, Alfredo Goldman, Marcelo Finger, and Germano Bezerra. Integrade: object-oriented grid middleware leberaging idle computing power of desktop machines. Concurrency and Computa-tion: Practice & Experience, 16:449–459, 2004.

[Glo05] Globus Toolkit. http://www.globus.org, ´Ultimo acesso em setem-bro/2005.

[gpd06] Grid Portal Development Kit (GPDK). http://doesciencegrid.org/

projects/GPDK/, ´Ultimo acesso em janeiro/2006.

[gri06a] Mercury. http://www.gridlab.org/WorkPackages/wp-11/, ´Ultimo acesso em janeiro/2006.

[gri06b] Gride web site. http://apstc.sun.com.sg/content.php?l1=

research&l2=projects&l3=gride, ´Ultimo acesso em janeiro/2006.

[gri06c] GridPort. https://gridport.npaci.edu/, ´Ultimo acesso em ja-neiro/2006.

[gri06d] GridSphere portal framework. http://www.gridsphere.org, ´Ultimo acesso em janeiro/2006.

[gt406] GT4IDE web site. http://gsbt.sourceforge.net/content/view/12/

29/, ´Ultimo acesso em janeiro/2006.

[GW97] Andrew S. Grimshaw and William A. Wulf. Legion: The next logical step toward the world-wide virtual computer. Communications of the ACM, 40(1):39–45, January 1997.

[IBM06] IBM Grid Toolbox. http://www-1.ibm.com/grid/solutions/grid_

toolbox.shtml, ´Ultimo acesso em janeiro/2006.

[ic206] IC2D: Interactive Control and Debugging of Distribution. http://

www-sop.inria.fr/oasis/ProActive/IC2D/index.html, ´Ultimo acesso em janeiro/2006.

[ila06] ILab: Parameter Study Creation and Submission on the Infomation Power Grid.http://www.nas.nasa.gov/sc2000/ARC/ilab.html, ´Ultimo acesso em janeiro/2006.

[jcp06] Java Community Process. http://www.jcp.org/, ´Ultimo acesso em ja-neiro/2006.

[jsr06] JSR 168: Portlet Specification. http://www.jcp.org/en/jsr/detail?

id=168, ´Ultimo acesso em janeiro/2006.

[KDF96] P. Kacsuk, G. Dozsa, and Tibor Fadgyas. Designing parallel programs by the graphical language grapnel. Microprocess. Microprogram., 41(8-9):625–643, 1996.

[KDK+03] P. Kacsuk, G. D´ozsa, J. Kov´acs, R. Lovas, N. Podhorszki, Z. Balaton, and G. Gomb´as. P-GRADE: A Grid Programming Environment. Journal of Grid Computing, 1(2):171–197, 2003.

[KG04] Sriram Krishnan and Dennis Gannon. ”xcat3: A framework for cca com-ponents as ogsa services”. pages 90–97, 2004.

[LB04] Maozhen Li and Mark Baker. A Review of Grid Portal Technology. In Jose Cunha and O.F. Rana, editors, Grid Computing: Software Environments and Tools. Springer Verlag, 2004.

[LB05a] Maozhen Li and Mark Baker. Grid Portals. In The Grid: Core Technolo-gies. Paperback, 2005.

[LB05b] Maozhen Li and Mark Baker. Workflow Management for the Grid. InThe Grid: Core Technologies. Paperback, 2005.

[LBRT97] M. Livny, J. Basney, R. Raman, and T. Tannenbaum. Mechanisms for High Throughput Computing. Speedup Journal, 11(1), 1997.

[leg05] Legion: A Worldwide Virtual Computer.http://www.cs.virginia.edu/

~legion, ´Ultimo acesso em novembro/2005.

Documentos relacionados