NAME
     drmaa_init, drmaa_exit - Start/finish Sun Grid Engine  DRMAA
     session

SYNOPSIS
     #include "drmaa.h"

     int drmaa_init(
          const char *contact,
          char *error_diagnosis,
          size_t error_diag_len
     );

     int drmaa_exit(
          char *error_diagnosis,
          size_t error_diag_len
     );

DESCRIPTION
  drmaa_init()
     The drmaa_init() function initializes the  Sun  Grid  Engine
     DRMAA API library for all threads of the process and creates
     a new DRMAA session. This routine must be called once before
     any   other   DRMAA   call,   except  for  drmaa_version(3),
     drmaa_get_DRM_system(3),                                 and
     drmaa_get_DRMAA_implementation(3).   Except  for  the  above
     listed functions, no DRMAA functions may  be  called  before
     the  drmaa_init()  function  completes.   Any DRMAA function
     which is called before the drmaa_init()  function  completes
     will  return a DRMAA_ERRNO_NO_ACTIVE_SESSION error.  Contact
     is an implementation dependent string which may be  used  to
     specify  which  Sun  Grid  Engine cell to use. If contact is
     NULL, the default Sun Grid Engine cell will be used. In  the
     1.0  implementation  contact  may  have the following value:
     session=<session_id>.   To  determine  the  session_id,  the
     drmaa_get_contact(3)  function  should  be  called after the
     session  has  already  been  initialized.   By  passing  the
     session=<session_id>  string  to  the drmaa_init() function,
     instead of creating a new session,  DRMAA  will  attempt  to
     reconnect  to  the session indicated by the session_id.  The
     result of reconnecting to a previous  session  is  that  all
     jobs  previously  submitted  in  that session that are still
     running will be available in the DRMAA session.  Note,  how-
     ever,  that jobs which ended before the call to drmaa_init()
     may not be available or may have no associated exit informa-
     tion or resource usage data.

  drmaa_exit()
     The drmaa_exit() function closes the DRMAA session  for  all
     threads  and must be called before process termination.  The
     drmaa_exit() function may be called only once  by  a  single
     thread  in  the  process  and  may  only be called after the
     drmaa_init() function has completed.   Any  DRMAA  function,
     other   than   drmaa_init(3),  which  is  called  after  the
     drmaa_exit()    function    completes    will    return    a
     DRMAA_ERRNO_NO_ACTIVE_SESSION error.

     The drmaa_exit() function does necessary  clean  up  of  the
     DRMAA  session state, including unregistering from the qmas-
     ter(8).  If the drmaa_exit() function  is  not  called,  the
     qmaster  will  store  events  for the DRMAA client until the
     connection times out, causing extra work for the qmaster and
     consuming system resources.

     Submitted jobs are not affected by  the  drmaa_exit()  func-
     tion.

ENVIRONMENTAL VARIABLES
     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.


     SGE_DEBUG_LEVEL
                    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.

     SGE_QMASTER_PORT
                    If set, specifies the tcp port on  which  the
                    sge_qmaster is expected to listen for commun-
                    ication requests.   Most  installations  will
                    use  a  services  map entry instead to define
                    that port.

RETURN VALUES
     Upon successful completion,  drmaa_init()  and  drmaa_exit()
     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.


ERRORS
     The drmaa_init() and drmaa_exit() functions will fail if:

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

  DRMAA_ERRNO_DRM_COMMUNICATION_FAILURE
     Could not contact DRM system for this request.

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

  DRMAA_ERRNO_INVALID_ARGUMENT
     The input value for an argument is invalid.

     The drmaa_init() will fail if:

  DRMAA_ERRNO_INVALID_CONTACT_STRING
     Initialization failed due to invalid contact string.

  DRMAA_ERRNO_DEFAULT_CONTACT_STRING_ERROR
     Could not use the default contact string to connect  to  DRM
     system.

  DRMAA_ERRNO_DRMS_INIT_FAILED
     Initialization failed due to failure to init DRM system.

  DRMAA_ERRNO_ALREADY_ACTIVE_SESSION
     Initialization failed due to existing DRMAA session.

  DRMAA_ERRNO_NO_MEMORY
     Failed allocating memory.

     The drmaa_exit() will fail if:

  DRMAA_ERRNO_NO_ACTIVE_SESSION
     Failed because there is no active session.

  DRMAA_ERRNO_DRMS_EXIT_ERROR
     DRM system disengagement failed.

SEE ALSO
     drmaa_submit(3).








Man(1) output converted with man2html