Difference between revisions of "LGI Pilotjob Framework"

From PDP/Grid Wiki
Jump to navigationJump to search
m
 
(18 intermediate revisions by the same user not shown)
Line 12: Line 12:
 
==Architecture==
 
==Architecture==
 
An existing LGI setup is the base, and that's all that's visible to the user. This is centered around the project server. The project server communicates with resources that execute the work. A resource consists of a resource daemon that runs the application. Now on the grid there are pilotjobs, which do nothing but running a single application by means of a LGI resource daemon. They are the work-horses. The lifecycle of these pilotjobs is managed by the pilotjob manager (which makes sure enough pilotjobs are running all the time).
 
An existing LGI setup is the base, and that's all that's visible to the user. This is centered around the project server. The project server communicates with resources that execute the work. A resource consists of a resource daemon that runs the application. Now on the grid there are pilotjobs, which do nothing but running a single application by means of a LGI resource daemon. They are the work-horses. The lifecycle of these pilotjobs is managed by the pilotjob manager (which makes sure enough pilotjobs are running all the time).
 +
 +
With everything properly tuned, this means in practice that users can submit jobs using one of the LGI interfaces, while they are executed on the grid.
  
 
==Status==
 
==Status==
The current prototype shows good results. After some experience with real-world applications, we plan to release a public version.
+
The current prototype shows good results. We're currently shaping up the code for a release. The current code is in beta-shape and available from [https://github.com/wvengen/lgipilot github].
 +
 
 +
==R==
 +
One idea is to use this framework to provide easy access to R on the grid. A prototype Rlgi package is available at [https://github.com/wvengen/Rlgi github].
 +
 
 +
* [http://nws-r.sourceforge.net/ netWorkSpaces with R], seems to have moved to the commercial scene at [http://www.revolutionanalytics.com/ Revolution Analytics]: a special edition of R for large-scale computing
 +
* [http://biocep-distrib.r-forge.r-project.org/ Biocep-R]. Example: [http://user2010.org/tutorials/Chine.html Elastic-R], a google docs-like portal for data analysis in the cloud
 +
* [http://epub.ub.uni-muenchen.de/8991/1/parallelR_techRep.pdf State-of-the-art in Parallel Computing with R]
 +
* [http://cran.r-project.org/web/views/HighPerformanceComputing.html High-Performance and Parallel Computing with R]
 +
* [https://spaces.umbc.edu/display/hpc/Running+R+on+HPC Running R on HPC]
 +
* Other R portals
 +
** [http://technical.bestgrid.org/index.php/GridSphere_R_Portal_Initial_Work_Plan GridSphere R portal work plan]
 +
** [http://www.d4science.eu/node/664 D4Science] obtained integrated R support in 2011
 +
** [http://opani.com/ Opani]
 +
* Other seamless submission portals
 +
** [http://www.picloud.com/ picloud]
 +
* [https://ubalo.com/ Ubalo]
 +
 
 +
==Links==
 +
* [http://www.eu-egee.org/fileadmin/documents/UseCases/Pilotjobs.html EGEE Pilotjobs explained]
 +
* Pilotjob frameworks
 +
** [https://twiki.cern.ch/twiki/bin/view/ArdaGrid/DIANE DIANE] & [http://ganga.web.cern.ch/ganga/ Ganga]
 +
** [https://twiki.cern.ch/twiki/bin/view/Atlas/Panda Panda]
 +
** Wisdom?
 +
* Similar projects
 +
** [https://www.egi.eu/indico/contributionDisplay.py?sessionId=10&contribId=135&confId=207 A suite for distributed execution of general purpose applications on the Grid for small- and mid-size VOs]
 +
** [https://www.egi.eu/indico/contributionDisplay.py?contribId=127&sessionId=18&confId=207 Job Submission Tool, web interface and WebDAV data management]
 +
* Pilotjob articles
 +
** [http://dx.doi.org/10.1109/CCGRID.2010.91 SAGA BigJob: An Extensible and Interoperable Pilot-Job Abstraction for Distributed Applications and Systems (2010)]
 +
** [http://www.springerlink.com/content/9w07633396187775/ Modelling Pilot-Job Applications on Production Grids (2009)] ([http://www.creatis.insa-lyon.fr/site/sites/default/files/heteropar09-glatard-camarasu-final.pdf pdf])

Latest revision as of 14:00, 1 March 2012

The Leiden Grid Infrastructure (LGI) is a framework for executing high-performance applications on different computer systems. It consists of one or more project servers that keep track of all jobs and resources, and a collection of resources that regularly contact the project server for work.

This project makes a connection to gLite grid infrastructure (EGI) by introducing an efficient way to run jobs on the grid that are managed by an LGI setup. This would have the following benefits:

  • Improved latency with respect to the grid.
  • Users do not have to port an application to the grid, as the LGI administrator makes sure applications are running properly.
  • Better scalability, since the WMS can give problems with a large number of jobs.
  • Possibility for username/password authentication instead of certificates (with the aid of a robot certificate).
  • Possibility to mix grid and non-grid systems.

With a little luck, this will make the grid more accessible to less technically minded people.

Architecture of the LGI pilotjob framework.

Architecture

An existing LGI setup is the base, and that's all that's visible to the user. This is centered around the project server. The project server communicates with resources that execute the work. A resource consists of a resource daemon that runs the application. Now on the grid there are pilotjobs, which do nothing but running a single application by means of a LGI resource daemon. They are the work-horses. The lifecycle of these pilotjobs is managed by the pilotjob manager (which makes sure enough pilotjobs are running all the time).

With everything properly tuned, this means in practice that users can submit jobs using one of the LGI interfaces, while they are executed on the grid.

Status

The current prototype shows good results. We're currently shaping up the code for a release. The current code is in beta-shape and available from github.

R

One idea is to use this framework to provide easy access to R on the grid. A prototype Rlgi package is available at github.

Links