stilt.execution.submit#
- stilt.execution.submit(project, *, receptors=None, execution=None, skip_existing=True, compute_root=None)[source]#
Submit every simulation of a project that has not finished to Slurm.
The receptors with missing results are split among up to
n_workerstasks of one job array, and this returns once it is submitted. The submission is a folder_slurm/<date_time>_<id>/in the project:receptors.txtlists the receptors to run,receptors.parquetholds their checked rows fromreceptors.csv,execution.yamlholds the execution settings,job.shis the script given tosbatch, and<task>.logis each task’s log. Taskirunsstilt run <project> --receptors receptors.parquet --task i/N, so it does not read and check all ofreceptors.csvagain. A task that is preempted or nears its time limit requeues itself and skips what it finished (seerun()).- Parameters:
- Returns:
The Slurm job id of the array, or
Nonewhen nothing needs to run.squeue -j <id>follows it andscancel <id>stops it.- Return type:
- Raises:
ValueError – If the execution backend is not Slurm.