pub struct SlurmApptainerBackendConfig {
pub interval: Option<u64>,
pub max_concurrency: Option<u32>,
pub default_slurm_partition: Option<SlurmPartitionConfig>,
pub short_task_slurm_partition: Option<SlurmPartitionConfig>,
pub gpu_slurm_partition: Option<SlurmPartitionConfig>,
pub fpga_slurm_partition: Option<SlurmPartitionConfig>,
pub sbatch: AdditionalArgs,
pub job_name_prefix: Option<String>,
pub apptainer: ApptainerConfig,
}Expand description
Configuration for the Slurm + Apptainer backend.
Fields§
§interval: Option<u64>The task monitor polling interval, in seconds.
Defaults to 30 seconds.
max_concurrency: Option<u32>The maximum number of concurrent Slurm operations the backend will perform.
This controls the maximum concurrent number of sbatch processes the
backend will spawn to queue tasks.
Defaults to 10 concurrent operations.
default_slurm_partition: Option<SlurmPartitionConfig>Which partition, if any, to specify when submitting normal jobs to Slurm.
This may be superseded by
short_task_slurm_partition,
gpu_slurm_partition, or
fpga_slurm_partition for corresponding
tasks.
short_task_slurm_partition: Option<SlurmPartitionConfig>Which partition, if any, to specify when submitting short tasks to Slurm.
This may be superseded by
gpu_slurm_partition or
fpga_slurm_partition for tasks which
require specialized hardware.
gpu_slurm_partition: Option<SlurmPartitionConfig>Which partition, if any, to specify when submitting tasks which require a GPU to Slurm.
fpga_slurm_partition: Option<SlurmPartitionConfig>Which partition, if any, to specify when submitting tasks which require an FPGA to Slurm.
sbatch: AdditionalArgsThe additional arguments to sbatch used to queue a new task.
job_name_prefix: Option<String>Prefix to add to every Slurm job name before the task identifier.
apptainer: ApptainerConfigThe configuration of Apptainer, which is used as the container runtime on the compute nodes where Slurm dispatches tasks.
Note that this will likely be replaced by an abstraction over multiple container execution runtimes in the future, rather than being hardcoded to Apptainer.
Implementations§
Trait Implementations§
Source§impl Clone for SlurmApptainerBackendConfig
impl Clone for SlurmApptainerBackendConfig
Source§fn clone(&self) -> SlurmApptainerBackendConfig
fn clone(&self) -> SlurmApptainerBackendConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SlurmApptainerBackendConfig
impl Debug for SlurmApptainerBackendConfig
Source§impl Default for SlurmApptainerBackendConfig
impl Default for SlurmApptainerBackendConfig
Source§fn default() -> SlurmApptainerBackendConfig
fn default() -> SlurmApptainerBackendConfig
impl Eq for SlurmApptainerBackendConfig
Source§impl From<SlurmApptainerBackendConfig> for BackendConfig
impl From<SlurmApptainerBackendConfig> for BackendConfig
Source§fn from(config: SlurmApptainerBackendConfig) -> Self
fn from(config: SlurmApptainerBackendConfig) -> Self
Source§impl<'de> FromToml<'de> for SlurmApptainerBackendConfig
impl<'de> FromToml<'de> for SlurmApptainerBackendConfig
Source§impl PartialEq for SlurmApptainerBackendConfig
impl PartialEq for SlurmApptainerBackendConfig
Source§fn eq(&self, other: &SlurmApptainerBackendConfig) -> bool
fn eq(&self, other: &SlurmApptainerBackendConfig) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SlurmApptainerBackendConfig
Source§impl ToToml for SlurmApptainerBackendConfig
impl ToToml for SlurmApptainerBackendConfig
Source§fn to_optional_toml<'a>(
&'a self,
arena: &'a Arena,
) -> Result<Option<Item<'a>>, ToTomlError>
fn to_optional_toml<'a>( &'a self, arena: &'a Arena, ) -> Result<Option<Item<'a>>, ToTomlError>
Auto Trait Implementations§
impl Freeze for SlurmApptainerBackendConfig
impl RefUnwindSafe for SlurmApptainerBackendConfig
impl Send for SlurmApptainerBackendConfig
impl Sync for SlurmApptainerBackendConfig
impl Unpin for SlurmApptainerBackendConfig
impl UnsafeUnpin for SlurmApptainerBackendConfig
impl UnwindSafe for SlurmApptainerBackendConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more