R6
class to launch and manage SLURM workers.
Attribution
The template files at
https://github.com/mschubert/clustermq/tree/master/inst
informed the development of the crew
launcher plugins in
crew.cluster
, and we would like to thank
Michael Schubert for developing clustermq
and releasing it under
the permissive Apache License 2.0.
See the NOTICE
and README.md
files in the crew.cluster
source code for additional attribution.
See also
Other slurm:
crew_class_monitor_slurm
,
crew_controller_slurm()
,
crew_launcher_slurm()
,
crew_monitor_slurm()
,
crew_options_slurm()
Super classes
crew::crew_class_launcher
-> crew.cluster::crew_class_launcher_cluster
-> crew_class_launcher_slurm
Methods
Inherited methods
crew::crew_class_launcher$active()
crew::crew_class_launcher$booting()
crew::crew_class_launcher$call()
crew::crew_class_launcher$done()
crew::crew_class_launcher$errors()
crew::crew_class_launcher$forward()
crew::crew_class_launcher$launch()
crew::crew_class_launcher$rotate()
crew::crew_class_launcher$scale()
crew::crew_class_launcher$set_name()
crew::crew_class_launcher$settings()
crew::crew_class_launcher$start()
crew::crew_class_launcher$summary()
crew::crew_class_launcher$tally()
crew::crew_class_launcher$terminate()
crew::crew_class_launcher$terminate_workers()
crew::crew_class_launcher$unlaunched()
crew::crew_class_launcher$wait()
crew.cluster::crew_class_launcher_cluster$initialize()
crew.cluster::crew_class_launcher_cluster$launch_worker()
crew.cluster::crew_class_launcher_cluster$terminate_worker()
Method script()
Generate the job script.
Arguments
name
Character of length 1, name of the job. For inspection purposes, you can supply a mock job name.
Details
Includes everything except the worker-instance-specific
job name and the worker-instance-specific
call to crew::crew_worker()
, both of which get inserted at
the bottom of the script at launch time.
Examples
if (identical(Sys.getenv("CREW_EXAMPLES"), "true")) {
launcher <- crew_launcher_slurm(
slurm_log_output = "log_file_%A.log",
slurm_log_error = NULL,
slurm_memory_gigabytes_per_cpu = 4096
)
launcher$script(name = "my_job_name")
}
Examples
## ------------------------------------------------
## Method `crew_class_launcher_slurm$script`
## ------------------------------------------------
if (identical(Sys.getenv("CREW_EXAMPLES"), "true")) {
launcher <- crew_launcher_slurm(
slurm_log_output = "log_file_%A.log",
slurm_log_error = NULL,
slurm_memory_gigabytes_per_cpu = 4096
)
launcher$script(name = "my_job_name")
}