graph LR
Job_Submission_Facade["Job Submission Facade"]
Auto_Executor["Auto-Executor"]
Job_Submission_Facade -- "leverages" --> Auto_Executor
Auto_Executor -- "provides to" --> Job_Submission_Facade
The Client API subsystem serves as the primary public interface for users to define, configure, and submit computational jobs within the submitit library. It abstracts the complexities of backend executor selection and job submission, providing a simplified, high-level entry point for users.
This component provides the high-level public API for users to define and submit computational jobs. It includes methods like submit, submit_array, and map_array, acting as a simplified facade over the complex underlying job submission process. It is the primary entry point for users interacting with the submitit library.
Related Classes/Methods:
submitit.core.core.submit:729-738submitit.core.core.submit_array:774-803submitit.core.core.map_array:746-772submitit.core.core._internal_process_submissions:872-915submitit.core.utils.DelayedSubmission:116-165
This component is responsible for intelligently determining and selecting the most suitable execution backend (e.g., Slurm, Local, Debug) based on environmental factors or user configuration. It also handles the initialization and configuration of the chosen executor, ensuring that the correct backend is prepared for job execution.
Related Classes/Methods: