- pep723:#
- type:
dictargument path:pep723PEP 723 metadata
- work_base:#
- type:
str, optional, default:./argument path:pep723/work_baseBase directory for the work
- forward_common_files:#
- type:
typing.List[str], optional, default:[]argument path:pep723/forward_common_filesCommon files to forward to the remote machine
- backward_common_files:#
- type:
typing.List[str], optional, default:[]argument path:pep723/backward_common_filesCommon files to backward from the remote machine
- machine:#
- type:
dictargument path:pep723/machineMachine configuration. See related documentation for details.
- batch_type:#
- type:
strargument path:pep723/machine/batch_typeThe batch job system type. Option: Torque, PBS, OpenAPI, DistributedShell, LSF, Slurm, SGE, Fugaku, SlurmJobArray, Bohrium, Shell, JH_UniScheduler
- local_root:#
- type:
str|NoneTypeargument path:pep723/machine/local_rootThe dir where the tasks and relating files locate. Typically the project dir.
- remote_root:#
- type:
str|NoneType, optionalargument path:pep723/machine/remote_rootThe dir where the tasks are executed on the remote machine. Only needed when context is not lazy-local.
- clean_asynchronously:#
- type:
bool, optional, default:Falseargument path:pep723/machine/clean_asynchronouslyClean the remote directory asynchronously after the job finishes.
- retry_count:#
- type:
int, optional, default:3argument path:pep723/machine/retry_countNumber of retries to resubmit failed jobs.
Depending on the value of context_type, different sub args are accepted.
- context_type:#
- type:
str(flag key)argument path:pep723/machine/context_typepossible choices:OpenAPIContext,LocalContext,HDFSContext,SSHContext,LazyLocalContext,BohriumContextThe connection used to remote machine. Option: LocalContext, LazyLocalContext, SSHContext, BohriumContext, HDFSContext, OpenAPIContext
When context_type is set to
OpenAPIContext(or its aliasesopenapicontext,OpenAPI,openapi):- remote_profile:#
- type:
dict, optionalargument path:pep723/machine[OpenAPIContext]/remote_profileThe information used to maintain the connection with remote machine. This field is empty for this context.
When context_type is set to
LocalContext(or its aliaseslocalcontext,Local,local):- remote_profile:#
- type:
dict, optionalargument path:pep723/machine[LocalContext]/remote_profileThe information used to maintain the local machine.
- symlink:#
- type:
bool, optional, default:Trueargument path:pep723/machine[LocalContext]/remote_profile/symlinkWhether to use symbolic links to replace copy. This option should be turned off if the local directory is not accessible on the Batch system.
When context_type is set to
HDFSContext(or its aliaseshdfscontext,HDFS,hdfs):- remote_profile:#
- type:
dict, optionalargument path:pep723/machine[HDFSContext]/remote_profileThe information used to maintain the connection with remote machine. This field is empty for this context.
When context_type is set to
SSHContext(or its aliasessshcontext,SSH,ssh):- remote_profile:#
- type:
dictargument path:pep723/machine[SSHContext]/remote_profileThe information used to maintain the connection with remote machine.
- hostname:#
- type:
strargument path:pep723/machine[SSHContext]/remote_profile/hostnamehostname or ip of ssh connection.
- username:#
- type:
strargument path:pep723/machine[SSHContext]/remote_profile/usernameusername of target linux system
- password:#
- type:
str, optionalargument path:pep723/machine[SSHContext]/remote_profile/password(deprecated) password of linux system. Please use SSH keys instead to improve security.
- port:#
- type:
int, optional, default:22argument path:pep723/machine[SSHContext]/remote_profile/portssh connection port.
- key_filename:#
- type:
str|NoneType, optional, default:Noneargument path:pep723/machine[SSHContext]/remote_profile/key_filenamekey filename used by ssh connection. If left None, find key in ~/.ssh or use password for login
- passphrase:#
- type:
str|NoneType, optional, default:Noneargument path:pep723/machine[SSHContext]/remote_profile/passphrasepassphrase of key used by ssh connection
- timeout:#
- type:
int, optional, default:10argument path:pep723/machine[SSHContext]/remote_profile/timeouttimeout of ssh connection
- totp_secret:#
- type:
str|NoneType, optional, default:Noneargument path:pep723/machine[SSHContext]/remote_profile/totp_secretTime-based one time password secret. It should be a base32-encoded string extracted from the 2D code.
- tar_compress:#
- type:
bool, optional, default:Trueargument path:pep723/machine[SSHContext]/remote_profile/tar_compressThe archive will be compressed in upload and download if it is True. If not, compression will be skipped.
- look_for_keys:#
- type:
bool, optional, default:Trueargument path:pep723/machine[SSHContext]/remote_profile/look_for_keysenable searching for discoverable private key files in ~/.ssh/
- execute_command:#
- type:
str|NoneType, optional, default:Noneargument path:pep723/machine[SSHContext]/remote_profile/execute_commandexecute command after ssh connection is established.
- proxy_command:#
- type:
str|NoneType, optional, default:Noneargument path:pep723/machine[SSHContext]/remote_profile/proxy_commandProxyCommand to use for SSH connection through intermediate servers.
When context_type is set to
LazyLocalContext(or its aliaseslazylocalcontext,LazyLocal,lazylocal):- remote_profile:#
- type:
dict, optionalargument path:pep723/machine[LazyLocalContext]/remote_profileThe information used to maintain the connection with remote machine. This field is empty for this context.
When context_type is set to
BohriumContext(or its aliasesbohriumcontext,Bohrium,bohrium,DpCloudServerContext,dpcloudservercontext,DpCloudServer,dpcloudserver,LebesgueContext,lebesguecontext,Lebesgue,lebesgue):- remote_profile:#
- type:
dictargument path:pep723/machine[BohriumContext]/remote_profileThe information used to maintain the connection with remote machine.
- email:#
- type:
str, optionalargument path:pep723/machine[BohriumContext]/remote_profile/emailEmail
- password:#
- type:
str, optionalargument path:pep723/machine[BohriumContext]/remote_profile/passwordPassword
- program_id:#
- type:
int, alias: project_idargument path:pep723/machine[BohriumContext]/remote_profile/program_idProgram ID
- retry_count:#
- type:
NoneType|int, optional, default:2argument path:pep723/machine[BohriumContext]/remote_profile/retry_countThe retry count when a job is terminated
- ignore_exit_code:#
- type:
bool, optional, default:Trueargument path:pep723/machine[BohriumContext]/remote_profile/ignore_exit_code- The job state will be marked as finished if the exit code is non-zero when set to True. Otherwise,
the job state will be designated as terminated.
- keep_backup:#
- type:
bool, optionalargument path:pep723/machine[BohriumContext]/remote_profile/keep_backupkeep download and upload zip
- input_data:#
- type:
dictargument path:pep723/machine[BohriumContext]/remote_profile/input_dataConfiguration of job
- resources:#
- type:
dictargument path:pep723/resourcesResources configuration. See related documentation for details.
- number_node:#
- type:
int, optional, default:1argument path:pep723/resources/number_nodeThe number of nodes required for each job.
- cpu_per_node:#
- type:
int, optional, default:1argument path:pep723/resources/cpu_per_nodeCPU numbers of each node assigned to each job.
- gpu_per_node:#
- type:
int, optional, default:0argument path:pep723/resources/gpu_per_nodeGPU numbers of each node assigned to each job.
- queue_name:#
- type:
str, optional, default: (empty string)argument path:pep723/resources/queue_nameThe queue name of batch job scheduler system.
- group_size:#
- type:
intargument path:pep723/resources/group_sizeThe number of tasks in a job. 0 means infinity.
- custom_flags:#
- type:
typing.List[str], optionalargument path:pep723/resources/custom_flagsThe extra lines pass to job submitting script header
- strategy:#
- type:
dict, optionalargument path:pep723/resources/strategystrategies we use to generation job submitting scripts.
- if_cuda_multi_devices:#
- type:
bool, optional, default:Falseargument path:pep723/resources/strategy/if_cuda_multi_devicesIf there are multiple nvidia GPUS on the node, and we want to assign the tasks to different GPUS.If true, dpdispatcher will manually export environment variable CUDA_VISIBLE_DEVICES to different task.Usually, this option will be used with Task.task_need_resources variable simultaneously.
- ratio_unfinished:#
- type:
float, optional, default:0.0argument path:pep723/resources/strategy/ratio_unfinishedThe ratio of tasks that can be unfinished.
- customized_script_header_template_file:#
- type:
str, optionalargument path:pep723/resources/strategy/customized_script_header_template_fileThe customized template file to generate job submitting script header, which overrides the default file.
- para_deg:#
- type:
int, optional, default:1argument path:pep723/resources/para_degDecide how many tasks will be run in parallel.
- source_list:#
- type:
typing.List[str], optional, default:[]argument path:pep723/resources/source_listThe env file to be sourced before the command execution.
- module_purge:#
- type:
bool, optional, default:Falseargument path:pep723/resources/module_purgeRemove all modules on HPC system before module load (module_list)
- module_unload_list:#
- type:
typing.List[str], optional, default:[]argument path:pep723/resources/module_unload_listThe modules to be unloaded on HPC system before submitting jobs
- module_list:#
- type:
typing.List[str], optional, default:[]argument path:pep723/resources/module_listThe modules to be loaded on HPC system before submitting jobs
- envs:#
- type:
dict, optional, default:{}argument path:pep723/resources/envsThe environment variables to be exported on before submitting jobs
- prepend_script:#
- type:
typing.List[str], optional, default:[]argument path:pep723/resources/prepend_scriptOptional script run before jobs submitted.
- append_script:#
- type:
typing.List[str], optional, default:[]argument path:pep723/resources/append_scriptOptional script run after jobs submitted.
- wait_time:#
- type:
float|int, optional, default:0argument path:pep723/resources/wait_timeThe waitting time in second after a single task submitted
- kwargs:#
- type:
dict, optionalargument path:pep723/resources/kwargsVary by different machines.
- batch_type:#
- type:
str, optionalargument path:pep723/resources/batch_typeAllow this key when strict checking.
- task_list:#
- type:
listargument path:pep723/task_listList of tasks to execute.
This argument takes a list with each element containing the following:
- command:#
- type:
str, optional, default:pythonargument path:pep723/task_list/commandPython interpreter or launcher. No need to contain the Python script filename.
- task_work_path:#
- type:
strargument path:pep723/task_list/task_work_pathThe dir where the command to be executed. Can be a glob pattern.
- forward_files:#
- type:
typing.List[str], optional, default:[]argument path:pep723/task_list/forward_filesThe files to be uploaded in task_work_path before the task exectued.
- backward_files:#
- type:
typing.List[str], optional, default:[]argument path:pep723/task_list/backward_filesThe files to be download to local_root in task_work_path after the task finished
- outlog:#
- type:
str|NoneType, optional, default:logargument path:pep723/task_list/outlogThe out log file name. redirect from stdout
- errlog:#
- type:
str|NoneType, optional, default:errargument path:pep723/task_list/errlogThe err log file name. redirect from stderr