Module audiocraft.utils.cluster
Utility functions for SLURM configuration and cluster settings.
Functions
def get_cluster_type(cluster_type: ClusterType | None = None) ‑> ClusterType | None-
Expand source code
def get_cluster_type( cluster_type: tp.Optional[ClusterType] = None, ) -> tp.Optional[ClusterType]: if cluster_type is None: return _guess_cluster_type() return cluster_type def get_slurm_parameters(cfg: omegaconf.dictconfig.DictConfig,
cluster_type: ClusterType | None = None) ‑> omegaconf.dictconfig.DictConfig-
Expand source code
def get_slurm_parameters( cfg: omegaconf.DictConfig, cluster_type: tp.Optional[ClusterType] = None ) -> omegaconf.DictConfig: """Update SLURM parameters in configuration based on cluster type. If the cluster type is not specify, it infers it automatically. """ from ..environment import AudioCraftEnvironment cluster_type = get_cluster_type(cluster_type) # apply cluster-specific adjustments if cluster_type == ClusterType.AWS: cfg["mem_per_gpu"] = None cfg["constraint"] = None cfg["setup"] = [] elif cluster_type == ClusterType.RSC: cfg["mem_per_gpu"] = None cfg["setup"] = [] cfg["constraint"] = None cfg["partition"] = "learn" slurm_exclude = AudioCraftEnvironment.get_slurm_exclude() if slurm_exclude is not None: cfg["exclude"] = slurm_exclude return cfgUpdate SLURM parameters in configuration based on cluster type. If the cluster type is not specify, it infers it automatically.
Classes
class ClusterType (value, names=None, *, module=None, qualname=None, type=None, start=1)-
Expand source code
class ClusterType(Enum): AWS = "aws" FAIR = "fair" RSC = "rsc" LOCAL_DARWIN = "darwin" DEFAULT = "default" # used for any other cluster.An enumeration.
Ancestors
- enum.Enum
Class variables
var AWSvar DEFAULTvar FAIRvar LOCAL_DARWINvar RSC