icolos.core.step_dispatch package#
Submodules#
icolos.core.step_dispatch.dispatcher module#
- class icolos.core.step_dispatch.dispatcher.IterParallelizer(*, parallelize: bool = False, jobs: int = 1, dependent_steps: int = None)[source]#
Bases:
BaseModel
- dependent_steps: int#
- jobs: int#
- parallelize: bool#
- class icolos.core.step_dispatch.dispatcher.StepDispatcher(*, step_id: str, work_dir: str = None, type: str = None, data: ~icolos.core.step_utils.input_preparator.StepData = StepData(compounds=[], generic=<icolos.core.containers.generic.GenericContainer object>, gmx_state=Gromacs Topology object: System: [] | Molecules: [] | FF: amber03 | itp files: [] | posre files []), input: ~icolos.core.step_utils.input_preparator.StepInputParameters = StepInputParameters(compounds=[], generic=[], gmx_state={}, perturbation_map=None, merge=StepMerge(compounds=True, enumerations=False, merge_compounds_by=<StepBaseEnum.INPUT_MERGE_BY_NAME: 'name'>, merge_enumerations_by=<StepBaseEnum.INPUT_MERGE_BY_ID: 'id'>), work_dir=None), writeout: ~typing.List[~icolos.core.step_utils.step_writeout.StepWriteoutParameters] = [], execution: ~icolos.core.workflow_steps.step.StepExecutionParameters = StepExecutionParameters(prefix_execution=None, binary_location=None, pipe_input=None, parallelization=StepExecutionParallelizationParameters(jobs=1, max_length_sublists=None), failure_policy=StepFailurePolicyParameters(n_tries=1, retry_wait_seconds=10), check_backend_availability=False, resources=StepExecutionResourceParameters(partition=<ExecutionPlatformEnum.CORE: 'core'>, time='12:00:00', gres=None, tasks=None, mem=None, cores=None, modules=[], other_args={}, additional_lines=[]), platform=<ExecutionPlatformEnum.LOCAL: 'local'>), settings: ~icolos.core.workflow_steps.step.StepSettingsParameters = StepSettingsParameters(arguments=StepSettingsArgsParameters(flags=[], parameters={}), additional={}), workflows: ~typing.List = [], parallel_execution: ~icolos.core.step_dispatch.dispatcher.IterParallelizer = IterParallelizer(parallelize=False, jobs=1, dependent_steps=None))[source]#
Bases:
StepBase
,BaseModel
Step class containing job control functionality required for StepIterator, supports Slurm for job scheduling Supports running Icolos process as master job for parallel step execution on cluster. Generates a pool of initialized steps to be executed, based on the
Step-type class for disaptching multiple steps in parallel, useful for executing multiple batch jobs simultaneously
- parallel_execution: IterParallelizer#
- workflows: List#