qlauncher.workflow.pilotjob_scheduler#
Summary#
Classes:
Reference#
- class qlauncher.workflow.pilotjob_scheduler.PilotJobManager(output_path: str, manager: Manager | None = None)[source]#
Bases:
BaseJobManager- submit(function: Callable, cores: int = 1, **kwargs) str[source]#
Submit a function job to the scheduler.
- Parameters:
function (Callable) – Function to be executed.
cores (int) – Number of CPU cores per task.
**kwargs – Manager-specific additional arguments.
- Returns:
Job ID as a string.
- Return type:
str
- submit_many(function: Callable, cores_per_job: int = 1, n_jobs: int | None = None) list[str][source]#
Submits as many jobs as there are currently available cores.
- Parameters:
function (Callable) – Function to execute.
output_path (str) – Path of output file.
cores_per_job (int, optional) – Number of cores per job. Defaults to 1.
n_jobs (int | None) – number of jobs to submit. If None, submit as many as possible (free_cores//cores_per_job). Defaults to None.
- Returns:
List with Job Id’s.
- Return type:
list[str]
- wait_for_a_job(job_id: str | None = None, timeout: float | None = None) tuple[str, str][source]#
Waits for a job to finish and returns it’s id and status.
- Parameters:
job_id (str | None, optional) – Id of selected job, if None waiting for any job. Defaults to None.
timeout (int | float | None, optional) – Timeout in seconds. Defaults to None.
- Raises:
ValueError – Raises if job_id not found or there are no jobs left.
- Returns:
job_id, job’s status
- Return type:
tuple[str, str]
- read_results(job_id) Any[source]#
Reads the result of given job_id.
- Parameters:
job_id (str) – Job Id.
- Returns:
Result of selected Job.
- Return type:
- cancel(job_id: str) None[source]#
Cancel a given job
- Parameters:
job_id (str) – id of the job to cancel.
- Raises:
KeyError – If job with a given id was not submitted by this manager.
- Returns:
None
- Return type:
None
- clean_up() None[source]#
Removes all output files generated in the process and calls self.manager.cleanup().
- run(function: Callable[[...], Any], cores: int = 1, **kwargs) Any[source]#
Convenience method: submit job, wait for completion, read results, and cleanup.
This method handles the complete lifecycle of a job execution.
- Parameters:
function (Callable[[...], Any]) – Function to be executed.
cores (int) – Number of CPU cores per task.
**kwargs – Manager-specific additional arguments.
- Returns:
Result object produced by the job.
- Return type:
Any