1drmaa_submit(3) Grid Engine DRMAA drmaa_submit(3)
2
3
4
6 drmaa_run_job, drmaa_run_bulk_jobs, drmaa_get_next_job_id,
7 drmaa_get_num_job_ids, drmaa_release_job_ids - Job submission
8
10 #include "drmaa.h"
11
12 int drmaa_run_job(
13 char *job_id,
14 size_t job_id_len,
15 drmaa_job_template_t *jt,
16 char *error_diagnosis,
17 size_t error_diag_len
18 );
19
20 int drmaa_run_bulk_jobs(
21 drmaa_job_ids_t **jobids,
22 drmaa_job_template_t *jt,
23 int start,
24 int end,
25 int incr,
26 char *error_diagnosis,
27 size_t error_diag_len
28 );
29
30 int drmaa_get_next_job_id(
31 drmaa_job_ids_t* values,
32 char *value,
33 int value_len
34 );
35
36 int drmaa_get_num_job_ids(
37 drmaa_job_ids_t* values,
38 int *size
39 );
40
41 void drmaa_release_job_ids(
42 drmaa_job_ids_t* values
43 );
44
46 drmaa_run_job() submits an Grid Engine job with attributes defined in
47 the DRMAA job template, jt. On success up to job_id_len bytes of the
48 job identifier are returned into the buffer, job_id.
49
50 drmaa_run_bulk_jobs()
51 The drmaa_run_bulk_jobs() submits a Grid Engine array job very much as
52 if the qsub(1) option `-t start-end:incr' had been used along with the
53 additional attributes defined in the DRMAA job template, jt. The same
54 constraints regarding value ranges are also in effect for the parame‐
55 ters start, end, and incr as for qsub(5) -t. On success a DRMAA job id
56 string vector containing job identifiers for each array job task is
57 returned into jobids. The job identifiers in the job id string vector
58 can be extracted using drmaa_get_next_job_id(3). The number of identi‐
59 fiers in the job id string vector can be determined using
60 drmaa_get_num_job_ids(3). Note that this function is only available in
61 the 1.0 implementation. The caller is responsible for releasing the
62 job id string vector returned into jobids using
63 drmaa_release_job_ids(3).
64
65 drmaa_get_next_job_id()
66 Each time drmaa_get_next_job_id() is called it returns into the buffer,
67 value, up to value_len bytes of the next entry stored in the DRMAA job
68 id string vector, values. With the DRMAA 1.0 library, once the job ids
69 list has been exhausted, DRMAA_ERRNO_NO_MORE_ELEMENTS is returned.
70 With the DRMAA 0.95 library, once the job ids list has been exhausted,
71 DRMAA_ERRNO_INVALID_ATTRIBUTE_VALUE is returned. In order to use the
72 DRMAA 0.95 library, you must define the DRMAA_95 macro, either in your
73 application directly or through a compiler flag, such as -DDRMAA_95.
74
75 drmaa_get_num_job_ids()
76 The drmaa_get_num_job_ids() returns into size the number of entries in
77 the DRMAA job ids string vector. This function is only available in
78 the 1.0 implementation.
79
80 drmaa_release_job_ids()
81 The drmaa_release_attr_job_id() function releases all resources associ‐
82 ated with the DRMAA job id string vector, values. This operation has no
83 effect on the actual Grid Engine array job tasks.
84
86 SGE_ROOT Specifies the location of the Grid Engine standard con‐
87 figuration files.
88
89 SGE_CELL If set, specifies the default Grid Engine cell to be
90 used. To address a Grid Engine cell Grid Engine uses (in
91 the order of precedence):
92
93 The name of the cell specified in the environment
94 variable SGE_CELL, if it is set.
95
96 The name of the default cell, i.e. default.
97
98
99 SGE_DEBUG_LEVEL
100 If set, specifies that debug information should be writ‐
101 ten to stderr. In addition the level of detail in which
102 debug information is generated is defined.
103
104 SGE_QMASTER_PORT
105 If set, specifies the tcp port on which sge_qmaster(8)
106 is expected to listen for communication requests. Most
107 installations will use a services map entry instead to
108 define that port.
109
111 Upon successful completion, drmaa_run_job(), drmaa_run_bulk_jobs(), and
112 drmaa_get_next_job_id() return DRMAA_ERRNO_SUCCESS. Other values indi‐
113 cate an error. Up to error_diag_len characters of error related diag‐
114 nosis information is then provided in the buffer error_diagnosis.
115
117 The drmaa_run_job(), drmaa_run_bulk_jobs(), and drmaa_get_next_job_id()
118 will fail if:
119
120 DRMAA_ERRNO_INTERNAL_ERROR
121 Unexpected or internal DRMAA error, like system call failure, etc.
122
123 DRMAA_ERRNO_DRM_COMMUNICATION_FAILURE
124 Could not contact DRM system for this request.
125
126 DRMAA_ERRNO_AUTH_FAILURE
127 The specified request is not processed successfully due to authoriza‐
128 tion failure.
129
130 DRMAA_ERRNO_INVALID_ARGUMENT
131 The input value for an argument is invalid.
132
133 DRMAA_ERRNO_NO_ACTIVE_SESSION
134 Failed because there is no active session.
135
136 DRMAA_ERRNO_NO_MEMORY
137 Failed allocating memory.
138
139 The drmaa_run_job() and drmaa_run_bulk_jobs() functions will fail if:
140
141 DRMAA_ERRNO_TRY_LATER
142 The DRM system indicated that it is too busy to accept the job. A retry
143 may succeed, however.
144
145 DRMAA_ERRNO_DENIED_BY_DRM
146 The DRM system rejected the job. The job will never be accepted due to
147 DRM configuration or job template settings.
148
149 The drmaa_get_next_job_id() will fail if:
150
151 DRMAA_ERRNO_INVALID_ATTRIBUTE_VALUE
152 When there are no more entries in the vector.
153
155 drmaa_attributes(3), drmaa_jobtemplate(3).
156
157
158
159GE 6.1 $Date: 2007/01/20 07:18:24 $ drmaa_submit(3)