in src/datatrove/executor/slurm.py [0:0]
def __init__(
self,
pipeline: list[PipelineStep | Callable],
tasks: int,
time: str,
partition: str,
cpus_per_task: int = 1,
mem_per_cpu_gb: int = 2,
workers: int = -1,
job_name: str = "data_processing",
qos: str = "normal",
env_command: str = None,
condaenv: str = None,
venv_path: str = None,
sbatch_args: dict | None = None,
max_array_size: int = 1001,
depends: SlurmPipelineExecutor | None = None,
depends_job_id: str | None = None,
job_id_position: int = -1,
job_id_retriever: Callable = None,
logging_dir: DataFolderLike = None,
skip_completed: bool = True,
slurm_logs_folder: str = None,
max_array_launch_parallel: bool = False,
stagger_max_array_jobs: int = 0,
run_on_dependency_fail: bool = False,
randomize_start_duration: int = 0,
requeue_signals: tuple[str] | None = ("SIGUSR1",),
mail_type: str = "ALL",
mail_user: str = None,
requeue: bool = True,
srun_args: dict = None,
tasks_per_job: int = 1,