Sponsored by BMBF Logo

The Grid Application Toolkit GAT

Within AstroGrid we are using the JavaGAT for the gridification of the ProC workflow engine developed at the Max-Planck-Institute for Astrophysics in Garching. The combination with the ProC made it necessary to develop GAT- Adaptors for the Sun Grid Engine (SGE), the Portable Batch System (PBS), and also real Grid adaptors for wsgram and gLite have been developed. JavaGAT also offers a command line interface for simple job submit and file operation, which has been developed in AstroGrid as well. This command line interface together with the ProC has been used for AstroGrid presentation at the midterm review of the BMBF.

What is GAT?

The Grid Application Toolkit is the kernel technology, which has been developed during the Gridlab project. It's mainly developed at the Albert-Einstein-Institute / Max-Plank-Institute for Gravitational Physics, the Free University of Amsterdam, and at the Center for Computation and Technology at the Louisana State University, and it already runs world wide in a lot of grid applications. GAT provides a simple API to several grid applications, which enables to decouple simple applications from the dynamic structure of the grid. GAT can be used either as a part for new class of grid application, or it allows to extend already existing grid applications. GAT is recommended as a central technology for other EU projects by the EU gridstart project. The SAGA working group of the GGF treats GAT as a prototype implementation; the goal of SAGA is to provide a new standardized API for grid aplications.

What does GAT provide?

  • A uniform API to grid services (resourcebroker, replica service, data transfer service, data communication between applications, remote file and data access, etc...). The access to any grid middleware is enabled by the GAT adaptors. No changes in the code are necessary, if the middleware changes, or if a new middleware shall be accessed. The changes are restricted to the GAT adaptors, the final user application don't see anything of them.
  • Provides complex function for application migration and the task spawning.
  • Because of it's layer model, it is possible to use GAT for any grid services (Globus 2.x, Globus 3.x, Globus 4.x, Unicore, GridLab Services, etc...)
  • There is a a complete set of local adaptors available, which are restricted to a local machine, and which therefore allow, to develop grid applications without having a connection to a grid.
  • To independent GAT implementations are available: the C-GAT and the Java-GAT. For the C-GAT language bindings for C++ and Python are available. The GAT interface is language independent.
  • For C-GAT the following adaptors are available
  • GTK4-Adaptor (Pre-Webservices);
  • Unicore-Adaptor for Unicore 4;
  • PBS-Adaptor (AstroGrid-D development).

  • For Java-GAT we offer the following adaptors:
  • GTK4-Adaptor, also for Webservices;
  • gLite-Adaptor (AstroGrid-D development);
  • PBS-Adaptor (AstroGrid-D development);
  • SGE-Adaptor, based on scripts as well as on DRMAA (AstroGrid-D development).
  • Using JavaGAT enables you to access the Grid without installing a middleware on your computer. In the bin sub-directory of JavaGAT there are scripts available for grid-proxy-init, etc... These have been developed witin the AstroGrid project.
  • GAT is Open Source, it can be obtained without any charge.

Contact person for GAT in Germany

Alexander Beck-Ratzka, Max-Planck-Institut fuer Gravitationsphysik, Potsdam. Email: alexander.beck-ratzka@aei.mpg.de

Download pages for GAT

C-GAT: http://www.gridlab.org/WorkPackages/wp-1/gatreleases.html

JavaGAT: https://gforge.cs.vu.nl/projects/javagat

You can also check it out at https://gforge.cs.vu.nl/svn/javagat/. Please send an Email to Alexander Beck-Ratzka in order for getting access to the repository. We highly recommend to use JavaGAT, because JavaGAT offers you access to the Grid without the necessity of installing a grid middleware.


There is some new tutorial material available at http://www.aei.mpg.de/~alibeck/packages/GAT-tutorial.tar.gz. Other documentation material can be found either on the internet side of GAT or in the doc sub-directory of GAT.

Mailing lists

A german speaking mailing list: GAT@d-grid.de. Please subscribe at http://www.listserv.dfn.de/cgi-bin/wa?SUBED1=gat&A=1

The gat-user list: gat@cct.lsu.edu. Please subcribe at https://mail.cct.lsu.edu/mailman/listinfo/gat.

The gat-devel list (for more detailed questions): gat-devel@cct.lsu.edu. Please subscribe at https://mail.cct.lsu.edu/mailman/listinfo/gat-devel.