MPGraphExecutor¶
- class lsst.ctrl.mpexec.MPGraphExecutor(numProc: int, timeout: float, quantumExecutor: QuantumExecutor, *, startMethod: Literal['spawn'] | Literal['forkserver'] | None = None, failFast: bool = False, pdb: str | None = None, executionGraphFixup: ExecutionGraphFixup | None = None)¶
- Bases: - QuantumGraphExecutor- Implementation of QuantumGraphExecutor using same-host multiprocess execution of Quanta. - Parameters:
- numProcint
- Number of processes to use for executing tasks. 
- timeoutfloat
- Time in seconds to wait for tasks to finish. 
- quantumExecutorQuantumExecutor
- Executor for single quantum. For multiprocess-style execution when - numProcis greater than one this instance must support pickle.
- startMethodstr, optional
- Start method from - multiprocessingmodule,- Noneselects the best one for current platform.
- failFastbool, optional
- If set to - Truethen stop processing on first error from any task.
- pdbstr, optional
- Debugger to import and use (via the - post_mortemfunction) in the event of an exception.
- executionGraphFixupExecutionGraphFixup, optional
- Instance used for modification of execution graph. 
 
- numProc
 - Methods Summary - execute(graph)- Execute whole graph. - Return execution report from last call to - execute.- Methods Documentation - execute(graph: QuantumGraph) None¶
- Execute whole graph. - Implementation of this method depends on particular execution model and it has to be provided by a subclass. Execution model determines what happens here; it can be either actual running of the task or, for example, generation of the scripts for delayed batch execution. - Parameters:
- graphQuantumGraph
- Execution graph. 
 
- graph