...
| ├──
├──
├──
├── benchmarks # Placeholder for Load and stress tests
Directory structure in target
...
IFL call mapping with C-Style and CPP-style binding<WIP>
style binding CPP-style binding | IFL callStyle Binding | CPP-Style Binding | IFL calls |
---|
void drmaa2_jsession_free |
(drmaa2_jsession * js); |
|
|
void drmaa2_rsession_free |
(drmaa2_rsession * rs); |
|
|
void drmaa2_msession_free |
(drmaa2_msession * ms); (drmaa2_j * j); (drmaa2_jarray * ja); (drmaa2_r * r); |
|
|
drmaa2_string drmaa2_rsession_get_contact |
(const drmaa2_rsession rs); |
|
|
drmaa2_string drmaa2_rsession_get_session_name |
(const drmaa2_rsession rs); |
|
|
drmaa2_r drmaa2_rsession_get_reservation |
(const drmaa2_rsession rs, const drmaa2_string reservationId); |
| pbs_statresv |
drmaa2_r drmaa2_rsession_request_reservation |
(const drmaa2_rsession rs, const drmaa2_rtemplate rt); |
| pbs_submit_resv |
drmaa2_r_list drmaa2_rsession_get_reservations |
(const drmaa2_rsession rs); |
| pbs_statresv |
drmaa2_string drmaa2_r_get_id |
(const drmaa2_r r); |
|
|
drmaa2_string drmaa2_r_get_session_name |
(const drmaa2_r r); |
|
|
drmaa2_rtemplate drmaa2_r_get_reservation_template |
(const drmaa2_r r); |
|
|
drmaa2_rinfo drmaa2_r_get_info |
(const drmaa2_r r); |
| pbs_statresv |
drmaa2_error drmaa2_r_terminate |
(drmaa2_r r); |
| pbs_delresv |
drmaa2_string drmaa2_jarray_get_id |
(const drmaa2_jarray ja); |
|
|
drmaa2_j_list drmaa2_jarray_get_jobs |
(const drmaa2_jarray ja); |
| pbs_selectjob |
drmaa2_string drmaa2_jarray_get_session_name |
(const drmaa2_jarray ja); |
|
|
drmaa2_jtemplate drmaa2_jarray_get_job_template |
(const drmaa2_jarray ja); |
|
|
drmaa2_error drmaa2_jarray_suspend |
(drmaa2_jarray ja); |
| pbs_sigjob |
drmaa2_error drmaa2_jarray_resume |
(drmaa2_jarray ja); |
| pbs_sigjob |
drmaa2_error drmaa2_jarray_hold |
(drmaa2_jarray ja); |
| pbs_holdjob |
drmaa2_error drmaa2_jarray_release |
(drmaa2_jarray ja); |
| pbs_rlsjob |
drmaa2_error drmaa2_jarray_terminate |
(drmaa2_jarray ja); |
| pbs_deljob |
drmaa2_string drmaa2_jsession_get_contact |
(const drmaa2_jsession js); |
|
|
drmaa2_string drmaa2_jsession_get_session_name |
(const drmaa2_jsession js); |
|
|
drmaa2_string_list drmaa2_jsession_get_job_categories |
(const drmaa2_jsession js); |
|
|
drmaa2_j_list drmaa2_jsession_get_jobs |
(const drmaa2_jsession js, const drmaa2_jinfo filter); |
| pbs_selectjob |
drmaa2_jarray drmaa2_jsession_get_job_array |
(const drmaa2_jsession js, const drmaa2_string jobarrayId); |
| pbs_selectjob |
drmaa2_j drmaa2_jsession_run_job |
(const drmaa2_jsession js, const drmaa2_jtemplate jt);pbs_runjob/pbs_ |
| pbs_runjob , pbs_asyrunjob |
drmaa2_jarray drmaa2_jsession_run_bulk_jobs |
(const drmaa2_jsession js, const drmaa2_jtemplate jt, unsigned long begin_index, unsigned long end_index, unsigned long step, unsigned long max_parallel);/ , pbs_asyrunjob
|
drmaa2_j drmaa2_jsession_wait_any_started |
(const drmaa2_jsession js, const drmaa2_j_list l, const time_t timeout); |
| pbs_selectjob |
drmaa2_j drmaa2_jsession_wait_any_terminated |
(const drmaa2_jsession js, const drmaa2_j_list l, const time_t timeout); |
| pbs_selectjob |
drmaa2_string drmaa2_j_get_id |
(const drmaa2_j j); |
|
|
drmaa2_string drmaa2_j_get_session_name |
(const drmaa2_j j); |
|
|
drmaa2_jtemplate drmaa2_j_get_jt |
(const drmaa2_j j); |
|
|
drmaa2_error drmaa2_j_suspend |
(drmaa2_j j); |
| pbs_sigjob |
drmaa2_error drmaa2_j_resume |
(drmaa2_j j); |
| pbs_sigjob |
drmaa2_error drmaa2_j_hold |
(drmaa2_j j); |
| pbs_holdjob |
drmaa2_error drmaa2_j_release |
(drmaa2_j j); |
| pbs_rlsjob |
drmaa2_error drmaa2_j_terminate |
(drmaa2_j j); |
| pbs_deljob |
drmaa2_jstate drmaa2_j_get_state |
(const drmaa2_j j, drmaa2_string * substate); |
|
|
drmaa2_jinfo drmaa2_j_get_info |
(const drmaa2_j j); |
|
|
drmaa2_error drmaa2_j_wait_started |
(const drmaa2_j j, const time_t timeout); |
| pbs_selectjob |
drmaa2_error drmaa2_j_wait_terminated |
(const drmaa2_j j, const time_t timeout); |
| pbs_selectjob |
drmaa2_r_list drmaa2_msession_get_all_reservations |
(const drmaa2_msession ms); |
| pbs_statresv |
drmaa2_j_list drmaa2_msession_get_all_jobs |
(const drmaa2_msession ms, const drmaa2_jinfo filter); |
| pbs_selectjob |
drmaa2_queueinfo_list drmaa2_msession_get_all_queues |
(const drmaa2_msession ms, const drmaa2_string_list names); |
| pbs_statque |
drmaa2_machineinfo_list drmaa2_msession_get_all_machines |
(const drmaa2_msession ms, const drmaa2_string_list names);// ,pbs_statvnode
|
drmaa2_string drmaa2_get_drms_name |
(void); |
|
|
drmaa2_version drmaa2_get_drms_version |
(void); |
|
|
drmaa2_string drmaa2_get_drmaa_name |
(void); |
|
|
drmaa2_version drmaa2_get_drmaa_version |
(void); |
|
|
drmaa2_bool drmaa2_supports |
(const drmaa2_capability c); |
|
|
drmaa2_jsession drmaa2_create_jsession |
(const char * session_name, const char * contact); |
|
|
drmaa2_rsession drmaa2_create_rsession |
(const char * session_name, const char * contact); |
|
|
drmaa2_jsession drmaa2_open_jsession |
(const char * session_name); |
|
|
drmaa2_rsession drmaa2_open_rsession |
(const char * session_name); |
|
|
drmaa2_msession drmaa2_open_msession |
(const char * session_name); |
|
|
drmaa2_error drmaa2_close_jsession |
(drmaa2_jsession js); |
|
|
drmaa2_error drmaa2_close_rsession |
(drmaa2_rsession rs); |
|
|
drmaa2_error drmaa2_close_msession |
(drmaa2_msession ms); |
|
|
drmaa2_error drmaa2_destroy_jsession |
(const char * session_name); |
|
|
drmaa2_error drmaa2_destroy_rsession |
(const char * session_name); |
|
|
drmaa2_string_list drmaa2_get_jsession_names |
(void); |
|
|
drmaa2_string_list drmaa2_get_rsession_names |
(void); |
|
|
drmaa2_error drmaa2_register_event_notification |
(const drmaa2_callback callback);
CPP-Style binding
Code Block |
---|
language | cpp |
---|
theme | Eclipse |
---|
title | CPP-style class defination |
---|
collapse | true |
---|
|
namespace drmaa2
{
/** Forward declaration**/
class Job;
class JobArray;
struct QueueInfo;
struct MachineInfo;
struct SlotInfo;
class Reservation;
class JobSession;
class JobTemplate;
class JobInfo;
class ReservationInfo;
class ReservationTemplate;
class callback
{
public:
virtual void notify (notification notification);
};
class Reservation
{
public:
string getReservationId (void) const;
ReservationSession getSession (void) const;
ReservationTemplate getReservationTemplate (void) const;
ReservationInfo getInfo (void);
void terminate (void);
};
class JobArray
{
public:
string getJobArrayId (void) const;
vector <Job> getJobs (void) const;
JobSession getSession (void) const;
JobTemplate getJobTemplate (void) const;
void suspend (void);
void resume (void);
void hold (void);
void release (void);
void terminate (void);
};
/**
Every ReservationSession instance acts as container for advance reservations
in the DRM system. Every Reservation instance SHALL belong only to one
ReservationSession instance
*/
class ReservationSession
{
public:
string getContact (void) const;
string getSessionName (void) const;
Reservation getReservation (string reservationId);
Reservation requestReservation (ReservationTemplate reservationTemplate);
set <Reservation> getReservations (void);
};
/**
A job session instance acts as container for job instances controlled
through the DRMAA API. The session methods support the submission of new
jobs and the monitoring of existing jobs
*/
class JobSession
{
public:
string getSontact (void) const;
string getSessionName (void) const;
set <string> getJobCategories (void) const;
vector <job> getJobs (JobInfo filter);
JobArray getJobArray (string jobArrayId);
job runJob (JobTemplate jobTemplate);
JobArray runBulkJobs (JobTemplate jobTemplate,
long beginIndex,
long endIndex,
long step,
long maxParallel);
job waitAnyStarted (vector <job> jobs, time_t timeout);
job waitAnyTerminated (vector <job> jobs, time_t timeout);
};
/**
The MonitoringSession interface provides a set of stateless methods for
fetching information about the DRM system and the DRMAA implementation itself.
*/
class MonitoringSession
{
public:
set <Reservation> getAllReservations (void);
vector <Job> getAllJobs (JobInfo filter);
set <QueueInfo> getAllQueues (set <string> names);
set <MachineInfo> getAllMachines (set <string> names);
};
/**
The SessionManager interface is the main interface of a DRMAA implementation for
establishing communication with the DRM system. By the help of this interface, sessions
for job management, monitoring,and/or reservation management can be maintained.
*/
class SessionManager
{
public:
string getDrmsName (void) const;
version getDrmsVersion (void) const;
version getDrmaaVersion (void) const;
bool supports (capability capability);
JobSession createJobSession (string sessionName,
string contactString);
ReservationSession createReservationSession (string sessionName,
string contactString);
MonitoringSession createMonitoringSession (string contactString);
JobSession openJobSession (string sessionName);
ReservationSession openReservationSession (string sessionName);
void closeJobSession (JobSession s);
void closeReservationSession (ReservationSession s);
void closeMonitoringSession (MonitoringSession s);
void destroyJobSession (string sessionName);
void destroyReservationSession (string sessionName);
set <string> getJobSessions (void);
set <string> getReservationSessions (void);
void registerEventNotification (callback callback);
};
};
|
...