-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
379e855
commit a64030b
Showing
1 changed file
with
60 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
# Slurm Interface | ||
This documents the Slurm API/functions used by each of the plugins. | ||
|
||
## Plugin library (`slurm_banking`) | ||
- `pub fn slurm_info(format: *const ::std::os::raw::c_char, ...);` | ||
|
||
## `job_submit_plugin` | ||
- `pub const SLURM_VERSION_NUMBER: u32` | ||
- `pub const SLURM_SUCCESS: u32` | ||
- `pub struct job_descriptor` | ||
- `pub partition: *mut ::std::os::raw::c_char` | ||
- `pub user_id: u32` | ||
- `pub account: *mut ::std::os::raw::c_char` | ||
- `pub cpus_per_task: u16` | ||
- `pub num_tasks: u32` | ||
- `pub time_limit: u32` | ||
- `*error_msg = xstrdup(msg.as_ptr())` | ||
|
||
## `spank_plugin` | ||
- `pub const SLURM_VERSION_NUMBER: u32` | ||
- `pub const SLURM_SUCCESS: u32` | ||
- `pub fn spank_get_item(spank: spank_t, item: spank_item_t, ...) -> spank_err_t` | ||
- `pub fn slurm_load_job(resp: *mut *mut job_info_msg_t, job_id: u32, show_flags: u16) -> ::std::os::raw::c_int;` | ||
- `pub type job_info_msg_t = job_info_msg;` | ||
- `pub job_array: *mut slurm_job_info_t` | ||
- `pub partition: *mut ::std::os::raw::c_char` | ||
- `pub qos: *mut ::std::os::raw::c_char` | ||
- `pub account: *mut ::std::os::raw::c_char` | ||
- `pub num_cpus: u32` | ||
- `pub max_cpus: u32` | ||
- `pub num_nodes: u32` | ||
- `pub max_nodes: u32` | ||
- `pub time_limit: u32` | ||
- `pub user_id: u32` | ||
- `pub start_time: time_t` | ||
- `pub submit_time: time_t` | ||
- `pub nodes: *mut ::std::os::raw::c_char` | ||
- `pub fn slurm_free_job_info_msg(job_buffer_ptr: *mut job_info_msg_t);` | ||
|
||
## `job_completion_plugin` | ||
- `pub const SLURM_VERSION_NUMBER: u32` | ||
- `pub const SLURM_SUCCESS: u32` | ||
- `pub struct job_record` | ||
- `pub account: *mut ::std::os::raw::c_char` | ||
- `pub part_ptr: *mut part_record` | ||
- `pub name: *mut ::std::os::raw::c_char` | ||
- `pub qos_ptr: *mut slurmdb_qos_rec_t` | ||
- `pub name: *mut ::std::os::raw::c_char` | ||
- `pub total_cpus: u32` | ||
- `pub end_time: time_t` | ||
- `pub start_time: time_t` | ||
- `pub job_id: u32` | ||
- `pub user_id: u32` | ||
- `pub details: *mut job_details` | ||
- `pub submit_time: time_t` | ||
- `pub min_nodes: u32` | ||
- `pub nodes: *mut ::std::os::raw::c_char` | ||
- `pub job_state: u32` | ||
- `pub total_nodes: u32` | ||
- `pub fn job_state_string(inx: u32) -> *mut ::std::os::raw::c_char;` |