parsl.providers.provider_base.ExecutionProvider¶
-
class
parsl.providers.provider_base.
ExecutionProvider
[source]¶ Execution providers are responsible for managing execution resources that have a Local Resource Manager (LRM). For instance, campus clusters and supercomputers generally have LRMs (schedulers) such as Slurm, Torque/PBS, Condor and Cobalt. Clouds, on the other hand, have API interfaces that allow much more fine-grained composition of an execution environment. An execution provider abstracts these types of resources and provides a single uniform interface to them.
The providers abstract away the interfaces provided by various systems to request, monitor, and cancel compute resources.
+------------------ | script_string ------->| submit id <--------|---+ | [ ids ] ------->| status [statuses] <--------|----+ | [ ids ] ------->| cancel [cancel] <--------|----+ | +-------------------
Methods
__init__
()Initialize self.
cancel
(job_ids)Cancels the resources identified by the job_ids provided by the user.
status
(job_ids)Get the status of a list of jobs identified by the job identifiers returned from the submit request.
submit
(command, tasks_per_node[, job_name])The submit method takes the command string to be executed upon instantiation of a resource most often to start a pilot (such as IPP engine or even Swift-T engines).
Attributes
cores_per_node
Number of cores to provision per node.
label
Provides the label for this provider
mem_per_node
Real memory to provision per node in GB.
status_polling_interval
Returns the interval, in seconds, at which the status method should be called.