source: trunk/pbs_drmaa/pbs_attrib.h @ 1

Revision 1, 6.7 KB checked in by mmamonski, 9 years ago (diff)

Torque/PBS DRMAA initial commit

Line 
1/* $Id: pbs_attrib.h 256 2010-08-10 16:31:35Z mamonski $ */
2/*
3 *  FedStage DRMAA for PBS Pro
4 *  Copyright (C) 2006-2009  FedStage Systems
5 *
6 *  This program is free software: you can redistribute it and/or modify
7 *  it under the terms of the GNU General Public License as published by
8 *  the Free Software Foundation, either version 3 of the License, or
9 *  (at your option) any later version.
10 *
11 *  This program is distributed in the hope that it will be useful,
12 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 *  GNU General Public License for more details.
15 *
16 *  You should have received a copy of the GNU General Public License
17 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#ifndef __PBS_DRMAA__PBS_ATTRIB_H
21#define __PBS_DRMAA__PBS_ATTRIB_H
22
23#ifdef HAVE_CONFIG_H
24#       include <config.h>
25#endif
26
27#include <drmaa_utils/common.h>
28
29fsd_template_t *pbsdrmaa_pbs_template_new(void);
30int pbsdrmaa_pbs_attrib_by_name( const char *name );
31
32#define PBSDRMAA_EXECUTION_TIME         "Execution_Time"
33#define PBSDRMAA_CHECKPOINT             "Checkpoint"
34#define PBSDRMAA_ERROR_PATH             "Error_Path"
35#define PBSDRMAA_GROUPS                 "group_list"
36#define PBSDRMAA_HOLD_TYPES             "Hold_Types"
37#define PBSDRMAA_JOIN_FILES             "Join_Path"
38#define PBSDRMAA_KEEP_FILES             "Keep_Files"
39/* #define PBSDRMAA_RESOURCES              "Resource_List" */
40#define PBSDRMAA_CPU_TIME_LIMIT         "Resource_List.cput"
41#define PBSDRMAA_FILE_SIZE_LIMIT        "Resource_List.file"
42#define PBSDRMAA_NICE                   "Resource_List.nice"
43#define PBSDRMAA_VMEM_LIMIT             "Resource_List.vmem"
44#define PBSDRMAA_SINGLE_CPU_TIME_LIMIT  "Resource_List.pcput"
45#define PBSDRMAA_SINGLE_RSS_LIMIT       "Resource_List.pmem"
46#define PBSDRMAA_SINGLE_VMEM_LIMIT      "Resource_List.pvmem"
47#define PBSDRMAA_WALLTIME_LIMIT         "Resource_List.walltime"
48#define PBSDRMAA_ARCHITECTURE           "Resource_List.arch"
49#define PBSDRMAA_HOST                   "Resource_List.host"
50#define PBSDRMAA_NODES                  "Resource_List.nodes"
51#define PBSDRMAA_SOFTWARE               "Resource_List.software"
52#define PBSDRMAA_MAIL_POINTS            "Mail_Points"
53#define PBSDRMAA_OUTPUT_PATH            "Output_Path"
54#define PBSDRMAA_PRIORITY               "Priority"
55#define PBSDRMAA_DESITINATION           "destination"
56#define PBSDRMAA_RERUNABLE              "Rerunable"
57#define PBSDRMAA_BULK_REQ               "job_array_request"
58#define PBSDRMAA_BULK_IDX               "job_array_id"
59#define PBSDRMAA_USERS                  "User_List"
60#define PBSDRMAA_JOB_ENVIRONMENT        "Variable_List"
61#define PBSDRMAA_ACCOUNT_NAME           "Account_Name"
62#define PBSDRMAA_EMAIL                  "Mail_Users"
63#define PBSDRMAA_JOB_NAME               "Job_Name"
64#define PBSDRMAA_SHELL                  "Shell_Path_List"
65#define PBSDRMAA_DEPEND                 "depend"
66#define PBSDRMAA_INTERACTIVE            "interactive"
67#define PBSDRMAA_STAGEIN                "stagein"
68#define PBSDRMAA_STAGEOUT               "stageout"
69/* additional job and general attribute names */
70#define PBSDRMAA_EXECUTION_HOST         "exec_host"
71#define PBSDRMAA_JOB_OWNER              "Job_Owner"
72#define PBSDRMAA_RESOURCES_USED         "resources_used"
73#define PBSDRMAA_JOB_STATE              "job_state"
74#define PBSDRMAA_QUEUE                  "queue"
75#define PBSDRMAA_SERVER                 "server"
76#define PBSDRMAA_COMMENT                "comment"
77#define PBSDRMAA_EXIT_STATUS            "exit_status"
78#define PBSDRMAA_START_TIME             "start_time"
79#define PBSDRMAA_EXTENSION              "extension"
80#define PBSDRMAA_SUBMIT_ARGS            "submit_args"
81
82
83typedef enum {
84        PBSDRMAA_ATTR_EXECUTION_TIME,
85        PBSDRMAA_ATTR_CHECKPOINT,
86        PBSDRMAA_ATTR_ERROR_PATH,
87        PBSDRMAA_ATTR_GROUPS,
88        PBSDRMAA_ATTR_HOLD_TYPES,
89        PBSDRMAA_ATTR_JOIN_FILES,
90        PBSDRMAA_ATTR_KEEP_FILES,
91        /* PBSDRMAA_ATTR_RESOURCES, */
92        PBSDRMAA_ATTR_CPU_TIME_LIMIT,
93        PBSDRMAA_ATTR_FILE_SIZE_LIMIT,
94        PBSDRMAA_ATTR_NICE,
95        PBSDRMAA_ATTR_VMEM_LIMIT,
96        PBSDRMAA_ATTR_SINGLE_CPU_TIME_LIMIT,
97        PBSDRMAA_ATTR_SINGLE_RSS_LIMIT,
98        PBSDRMAA_ATTR_SINGLE_VMEM_LIMIT,
99        PBSDRMAA_ATTR_WALLTIME_LIMIT,
100        PBSDRMAA_ATTR_ARCHITECTURE,
101        PBSDRMAA_ATTR_HOST,
102        PBSDRMAA_ATTR_NODES,
103        PBSDRMAA_ATTR_SOFTWARE,
104        PBSDRMAA_ATTR_MAIL_POINTS,
105        PBSDRMAA_ATTR_OUTPUT_PATH,
106        PBSDRMAA_ATTR_PRIORITY,
107        PBSDRMAA_ATTR_DESITINATION,
108        PBSDRMAA_ATTR_RERUNABLE,
109        PBSDRMAA_ATTR_BULK_REQ,
110        PBSDRMAA_ATTR_BULK_IDX,
111        PBSDRMAA_ATTR_USERS,
112        PBSDRMAA_ATTR_JOB_ENVIRONMENT,
113        PBSDRMAA_ATTR_ACCOUNT_NAME,
114        PBSDRMAA_ATTR_EMAIL,
115        PBSDRMAA_ATTR_JOB_NAME,
116        PBSDRMAA_ATTR_SHELL,
117        PBSDRMAA_ATTR_DEPEND,
118        PBSDRMAA_ATTR_INTERACTIVE,
119        PBSDRMAA_ATTR_STAGEIN,
120        PBSDRMAA_ATTR_STAGEOUT,
121        /* additional job and general attribute names */
122        PBSDRMAA_ATTR_EXECUTION_HOST,
123        PBSDRMAA_ATTR_JOB_OWNER,
124        PBSDRMAA_ATTR_RESOURCES_USED,
125        PBSDRMAA_ATTR_JOB_STATE,
126        PBSDRMAA_ATTR_QUEUE,
127        PBSDRMAA_ATTR_SERVER,
128        PBSDRMAA_ATTR_COMMENT,
129        PBSDRMAA_ATTR_EXIT_STATUS,
130        PBSDRMAA_ATTR_START_TIME,
131        PBSDRMAA_ATTR_EXTENSION,
132        PBSDRMAA_ATTR_SUBMIT_ARGS,
133        PBSDRMAA_ATTR_MTIME,
134
135#if 0
136        /* Additional Torque/OpenPBS attribs (not in DRMAA specification): */
137        /* Used by OpenPBS user commands: */
138        PBSDRMAA_ATTR_CHECKPOINT = DRMAA_N_ATTRIBUTES, /* MAX_DRMAA_ATTR+1, */
139        PBSDRMAA_ATTR_GROUP_LIST,
140        PBSDRMAA_ATTR_HOLD_TYPES,
141        PBSDRMAA_ATTR_KEEP_FILES,
142        PBSDRMAA_ATTR_RESOURCES,
143        PBSDRMAA_ATTR_MAIL_POINTS,
144        PBSDRMAA_ATTR_PRIORITY,
145        PBSDRMAA_ATTR_DESTINATION_QUEUE,
146        PBSDRMAA_ATTR_RERUNABLE,
147        PBSDRMAA_ATTR_USER_LIST,
148        PBSDRMAA_ATTR_ACCOUNT_NAME,
149        PBSDRMAA_ATTR_SHELL,
150        PBSDRMAA_ATTR_DEPENDENCIES,
151        PBSDRMAA_ATTR_INTERACTIVE,
152        PBSDRMAA_ATTR_STAGEIN,
153        PBSDRMAA_ATTR_STAGEOUT,
154
155        /* Additional job and general attribute names: */
156        PBSDRMAA_ATTR_JOB_STATE,
157        PBSDRMAA_ATTR_CTIME,
158        /* PBSDRMAA_ATTR_MTIME, moved to basic attributes - needed to determine job end time*/
159        PBSDRMAA_ATTR_QTIME,
160        PBSDRMAA_ATTR_ETIME,
161        PBSDRMAA_ATTR_RESOURCES_USED,
162        PBSDRMAA_ATTR_EXIT_STATUS,
163        PBSDRMAA_ATTR_JOB_OWNER,
164        PBSDRMAA_ATTR_EUSER,
165        PBSDRMAA_ATTR_EGROUP,
166        PBSDRMAA_ATTR_HOP_COUNT,
167        PBSDRMAA_ATTR_SECURITY,
168        PBSDRMAA_ATTR_SCHEDULER_HINT,
169        PBSDRMAA_ATTR_SERVER,
170        PBSDRMAA_ATTR_QUEUE,
171        PBSDRMAA_ATTR_QUEUE_RANK,
172        PBSDRMAA_ATTR_EXECUTION_HOST,
173        PBSDRMAA_ATTR_TOTAL_JOBS,
174        PBSDRMAA_ATTR_MAX_RUNNING,
175        PBSDRMAA_ATTR_COMMENT,
176        PBSDRMAA_ATTR_JOB_COOKIE,
177        PBSDRMAA_ATTR_HASHNAME,
178        PBSDRMAA_ATTR_SESSION_ID,
179        PBSDRMAA_ATTR_ALT_ID,
180
181        /* Reservation attributes */
182        PBSDRMAA_ATTR_RESERVATION_START,
183        PBSDRMAA_ATTR_RESERVATION_END,
184        PBSDRMAA_ATTR_RESERVATION_DURATION,
185        PBSDRMAA_ATTR_RESERVATION_STATE,
186        PBSDRMAA_ATTR_RESERVATION_SUBSTATE,
187
188        /* Pseudo PBS attributes */
189        PBSDRMAA_ATTR_RESERVATION_ID,
190#endif
191
192        PBSDRMAA_N_PBS_ATTRIBUTES
193} pbs_attribute_t;
194
195#endif /* __PBS_DRMAA__PBS_ATTRIB_H */
196
Note: See TracBrowser for help on using the repository browser.