wrench::WorkflowTask
-
class WorkflowTask : public std::enable_shared_from_this<WorkflowTask>
A computational task in a Workflow.
Public Functions
Add an input file to the task.
- Parameters:
file – the file
Add an output file to the task.
- Parameters:
file – the file
-
std::vector<std::shared_ptr<WorkflowTask>> getChildren()
Get the children of a task.
- Returns:
a list of workflow tasks
-
unsigned int getFailureCount() const
Get the number of times a task has failed.
- Returns:
a failure count
-
double getFlops() const
Get the number of flops of the task.
- Returns:
a number of flops
-
const std::string &getID() const
Get the id of the task.
- Returns:
an id as a string
-
unsigned long getMaxNumCores() const
Get the maximum number of cores that the task can use.
- Returns:
a number of cores
-
sg_size_t getMemoryRequirement() const
Get the memory requirement of the task.
- Returns:
a memory requirement (in bytes)
-
unsigned long getMinNumCores() const
Get the minimum number of cores required for running the task.
- Returns:
a number of cores
-
unsigned long getNumberOfChildren()
Get the number of children of a task.
- Returns:
a number of children
-
unsigned long getNumberOfParents()
Get the number of parents of a task.
- Returns:
a number of parents
-
std::shared_ptr<ParallelModel> getParallelModel() const
Get the task’s parallel model.
- Returns:
the parallel model
-
std::vector<std::shared_ptr<WorkflowTask>> getParents()
Get the parents of a task.
- Returns:
a list of workflow tasks
Retrieved the official shared pointer for this object.
- Returns:
a shared pointer
-
void setFlops(double f)
Set the number of flops of the task (to be used only in very specific cases in which it is guaranteed that changing a task’s work after that task has been created is a valid thing to do)
- Parameters:
f – the number of flops
-
void setMaxNumCores(unsigned long num_cores)
Set the maximum number of cores that the task can use (to be used only in very specific cases in which it is guaranteed that changing a task’s maximum number of cores after that task has been created is a valid thing to do)
- Parameters:
num_cores – a number of cores
-
void setMemoryRequirement(sg_size_t num_bytes)
Set the memory requirement of the task.
- Parameters:
num_bytes – a number of bytes
-
void setMinNumCores(unsigned long num_cores)
Set the minimum number of cores required for running the task (to be used only in very specific cases in which it is guaranteed that changing a task’s minimum number of cores after that task has been created is a valid thing to do)
- Parameters:
num_cores – a number of cores
Set the task’s parallel model.
- Parameters:
model – a parallel model