HOME

TheInfoList



OR:

Distributed Resource Management Application API (DRMAA) is a high-level
Open Grid Forum The Open Grid Forum (OGF) is a community of users, developers, and vendors for standardization of grid computing. It was formed in 2006 in a merger of the Global Grid Forum and the Enterprise Grid Alliance. The OGF models its process on the In ...
(OGF) API specification for the submission and control of jobs to a distributed resource management (DRM) system, such as a
cluster may refer to: Science and technology Astronomy * Cluster (spacecraft), constellation of four European Space Agency spacecraft * Asteroid cluster, a small asteroid family * Cluster II (spacecraft), a European Space Agency mission to study th ...
or
grid computing Grid computing is the use of widely distributed computer resources to reach a common goal. A computing grid can be thought of as a distributed system with non-interactive workloads that involve many files. Grid computing is distinguished from ...
infrastructure. The scope of the API covers all the high level functionality required for applications to submit, control, and monitor jobs on execution resources in the DRM system. In 2007, DRMAA was one of the first two (the other one was GridRPC) specifications that reached the full recommendation status in the OGF. In 2012 the second version of the DRMAA standard (DRMAA2) was published in an abstract
interface definition language interface description language or interface definition language (IDL), is a generic term for a language that lets a program or object written in one language communicate with another program written in an unknown language. IDLs describe an inter ...
(IDL) defining the semantic of the functions in GFD 194. DRMAA2 specifies more than twice as many calls as DRMAA. It covers cluster monitoring, has a notion of queues and machines, and introduces a multi job-session concept for single applications for a better job workflow management. Later in 2012 the C API was specified as a first language binding in GF 198.


Development Model

The development of this API was done through the
Global Grid Forum The Open Grid Forum (OGF) is a community of users, developers, and vendors for standardization of grid computing. It was formed in 2006 in a merger of the Global Grid Forum and the Enterprise Grid Alliance. The OGF models its process on the In ...
, in the model of IETF standard development, and it was originally co-authored by: *Roger Brobst from
Cadence Design Systems Cadence Design Systems, Inc. (stylized as cādence), headquartered in San Jose, California, is an American multinational computational software company, founded in 1988 by the merger of SDA Systems and ECAD, Inc. The company produces software, ...
*Waiman Chan from IBM *Fritz Ferstl from
Sun Microsystems Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, ...
, now Univa *Jeff Gardiner from John P. Robarts Research Institute *Andreas Haas from Sun Microsystems (Co-Chair) *Bill Nitzberg from Altair Engineering *Hrabri Rajic from
Intel Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the devel ...
(Maintainer & Co-Chair) *John Tollefsrud from Sun Microsystems Founding (Chair) This specification was first proposed at Global Grid Forum 3 (GGF3) in
Frascati Frascati () is a city and ''comune'' in the Metropolitan City of Rome Capital in the Lazio region of central Italy. It is located south-east of Rome, on the Alban Hills close to the ancient city of Tusculum. Frascati is closely associated wit ...
,
Italy Italy ( it, Italia ), officially the Italian Republic, ) or the Republic of Italy, is a country in Southern Europe. It is located in the middle of the Mediterranean Sea, and its territory largely coincides with the homonymous geographical ...
, but gained most of its momentum at Global Grid Forum 4 in
Toronto Toronto ( ; or ) is the capital city of the Provinces and territories of Canada, Canadian province of Ontario. With a recorded population of 2,794,356 in 2021, it is the List of the largest municipalities in Canada by population, most pop ...
,
Ontario Ontario ( ; ) is one of the thirteen provinces and territories of Canada.Ontario is located in the geographic eastern half of Canada, but it has historically and politically been considered to be part of Central Canada. Located in Central C ...
. The development of the specification was first proposed with the objective to facilitate direct interfacing of applications to existing DRM systems by application's builders, portal builders, and
Independent Software Vendor An independent software vendor (ISV), also known as a software publisher, is an organization specializing in making and selling software, as opposed to computer hardware, designed for mass or niche markets. This is in contrast to in-house softw ...
s (ISVs). Because the API was co-authored by participants from a wide-selection of companies and included participants from industries and education, its development resulted in an open standard that received a relatively good reception from a wide audience quickly.


Significance

Without DRMAA, no standard model existed to submit jobs to component regions of a Grid, assuming each region was running local DRMSs. The first version of DRMAA API has been implemented in Sun's Grid Engine and also in the University of Wisconsin–Madison's program
Condor Condor is the common name for two species of New World vultures, each in a monotypic genus. The name derives from the Quechua ''kuntur''. They are the largest flying land birds in the Western Hemisphere. They are: * The Andean condor (''V ...
. Furthermore, C, Java, and IDL binding documents have been made available.


Implementations

* Grid Engine * Univa Grid Engine *
HTCondor HTCondor is an open-source high-throughput computing software framework for coarse-grained distributed parallelization of computationally intensive tasks. It can be used to manage workload on a dedicated cluster of computers, or to farm out wor ...
* Torque/PBS * GridWay * Xgrid * EGEE (LCG2 / gLite) *
UNICORE UNICORE (UNiform Interface to COmputing REsources) is a grid computing technology for resources such as supercomputers or cluster systems and information stored in databases. UNICORE was developed in two projects funded by the German ministry ...
* Kerrighed Cluster Framework * IBM Tivoli Workload Scheduler LoadLeveler * SLURM * Python DRMAA2 Reference Implementation


Language Bindings

* C * C++ * Go *
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
*
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
*
Perl Perl is a family of two High-level programming language, high-level, General-purpose programming language, general-purpose, Interpreter (computing), interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it ...
* Python * Python DRMAA2 Binding *
Ruby A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum (aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sapp ...
* Tcl Other language bindings can be generated easily from
SWIG The Simplified Wrapper and Interface Generator (SWIG) is an open-source software tool used to connect computer programs or libraries written in C or C++ with scripting languages such as Lua, Perl, PHP, Python, R, Ruby, Tcl, and other langu ...
, which was first used by the Perl binding.


DRMAA applications

A number of software solutions use DRMAA to interface with different resource management systems: * LONI Pipeline * tigr-workflow * eXludus RepliCator * GridwiseTech Grid Engine- Globus Toolkit adapter


References


Distributed Resource Management Application API Specification 1
{{refend


External links


DRMAA's Project PageOpen Grid ForumCondor HomepageDRMAA binding for Platform LSFCondor Extensions ProjectDRMAA binding for Ruby
Grid computing Open standards