Man Linux: Main Page and Category List


       drmaa_run_job,        drmaa_run_bulk_jobs,       drmaa_get_next_job_id,
       drmaa_get_num_job_ids, drmaa_release_job_ids - Job submission


       #include "drmaa.h"

       int drmaa_run_job(
              char *job_id,
              size_t job_id_len,
              drmaa_job_template_t *jt,
              char *error_diagnosis,
              size_t error_diag_len

       int drmaa_run_bulk_jobs(
              drmaa_job_ids_t **jobids,
              drmaa_job_template_t *jt,
              int start,
              int end,
              int incr,
              char *error_diagnosis,
              size_t error_diag_len

       int drmaa_get_next_job_id(
              drmaa_job_ids_t* values,
              char *value,
              int value_len

       int drmaa_get_num_job_ids(
              drmaa_job_ids_t* values,
              int *size

       void drmaa_release_job_ids(
              drmaa_job_ids_t* values


       drmaa_run_job() submits an Sun Grid Engine job with attributes  defined
       in the DRMAA job template, jt. On success up to job_id_len bytes of the
       job identifier are returned into the buffer, job_id.

       The drmaa_run_bulk_jobs() submits a Sun Grid Engine array job very much
       as  if  the qsub(1) option `-t start-end:incr' had been used along with
       the additional attributes defined in the DRMAA job template,  jt.   The
       same  constraints  regarding  value  ranges  are also in effect for the
       parameters start, end, and incr as for qsub(5) -t. On success  a  DRMAA
       job id string vector containing job identifiers for each array job task
       is returned into jobids.  The job identifiers  in  the  job  id  string
       vector  can be extracted using drmaa_get_next_job_id(3).  The number of
       identifiers in the  job  id  string  vector  can  be  determined  using
       drmaa_get_num_job_ids(3).  Note that this function is only available in
       the 1.0 implementation.  The caller is responsible  for  releasing  the
       job     id     string     vector    returned    into    jobids    using

       Each time drmaa_get_next_job_id() is called it returns into the buffer,
       value,  up to value_len bytes of the next entry stored in the DRMAA job
       id string vector, values.  Once the job ids list  has  been  exhausted,
       DRMAA_ERRNO_NO_MORE_ELEMENTS is returned.

       The  drmaa_get_num_job_ids() returns into size the number of entries in
       the DRMAA job ids string vector.  This function is  only  available  in
       the 1.0 implementation.

       The   drmaa_release_attr_job_id()   function   releases  all  resources
       associated with the DRMAA job id string vector, values. This  operation
       has no effect on the actual Sun Grid Engine array job tasks.


       SGE_ROOT       Specifies  the  location of the Sun Grid Engine standard
                      configuration files.

       SGE_CELL       If set, specifies the default Sun Grid Engine cell to be
                      used.  To address a Sun Grid Engine cell Sun Grid Engine
                      uses (in the order of precedence):

                             The name of the cell specified in the environment
                             variable SGE_CELL, if it is set.

                             The name of the default cell, i.e. default.

                      If  set,  specifies  that  debug  information  should be
                      written to stderr. In addition the level  of  detail  in
                      which debug information is generated is defined.

                      If  set,  specifies the tcp port on which sge_qmaster(8)
                      is expected to listen for communication requests.   Most
                      installations  will  use a services map entry instead to
                      define that port.


       Upon successful completion, drmaa_run_job(), drmaa_run_bulk_jobs(), and
       drmaa_get_next_job_id()   return   DRMAA_ERRNO_SUCCESS.   Other  values
       indicate an error.  Up to error_diag_len characters  of  error  related
       diagnosis information is then provided in the buffer error_diagnosis.


       The drmaa_run_job(), drmaa_run_bulk_jobs(), and drmaa_get_next_job_id()
       will fail if:

       Unexpected or internal DRMAA error, like system call failure, etc.

       Could not contact DRM system for this request.

       The  specified  request  is   not   processed   successfully   due   to
       authorization failure.

       The input value for an argument is invalid.

       Failed because there is no active session.

       Failed allocating memory.

       The drmaa_run_job() and drmaa_run_bulk_jobs() functions will fail if:

       The DRM system indicated that it is too busy to accept the job. A retry
       may succeed, however.

       The DRM system rejected the job. The job will never be accepted due  to
       DRM configuration or job template settings.

       The drmaa_get_next_job_id() will fail if:

       When there are no more entries in the vector.


       drmaa_attributes(3), drmaa_jobtemplate(3).