Attention
Fluxion/flux-sched (both refer to the same project) is under development and its interfaces are not yet stable. APIs are not exported or exposed to external consumers. This documentation is meant for developers of Fluxion.
Queue Manager
Queue management and job scheduling policies.
-
enum class Flux::queue_manager::job_state_kind_t
Values:
-
enumerator INIT
-
enumerator PENDING
-
enumerator REJECTED
-
enumerator RUNNING
-
enumerator ALLOC_RUNNING
-
enumerator CANCELED
-
enumerator COMPLETE
-
enumerator INIT
-
using Flux::queue_manager::pending_key = std::tuple<unsigned int, double, uint64_t>
Helper typedef for use as a key in job state maps
-
using Flux::queue_manager::job_map_t = std::map<pending_key, flux_jobid_t>
-
const unsigned int Flux::queue_manager::MAX_QUEUE_DEPTH = 1000000
-
const unsigned int Flux::queue_manager::DEFAULT_QUEUE_DEPTH = 32
-
const unsigned int Flux::queue_manager::MAX_RESERVATION_DEPTH = 100000
-
const unsigned int Flux::queue_manager::HYBRID_RESERVATION_DEPTH = 64
-
std::shared_ptr<queue_policy_base_t> Flux::queue_manager::create_queue_policy(const std::string &policy, const std::string &reapi)
-
struct schedule_t
- #include <queue_policy_base.hpp>
Type to store schedule information such as the allocated or reserved (for backfill) resource set (R).
-
struct t_stamps_t
- #include <queue_policy_base.hpp>
Type to store various time stamps for queuing
-
class job_t
- #include <queue_policy_base.hpp>
Type to store a job's attributes.
-
class queue_policy_base_t : public Flux::resource_model::queue_adapter_base_t
- #include <queue_policy_base.hpp>
Queue policy base interface abstract class. Derived classes must implement its run_sched_loop and destructor methods. Insert, remove and pending_pop interface implementations are provided through its parent class (detail::queue_policy_base_impl_t).
Subclassed by Flux::queue_manager::detail::queue_policy_bf_base_t< reapi_type >, Flux::queue_manager::detail::queue_policy_fcfs_t< reapi_type >