public class MPIExec extends Abstract
Modifier and Type | Field and Description |
---|---|
static String |
COLLAPSE_LOGICAL_NAME
The logical name of the transformation that is able to run multiple
jobs via mpi.
|
static String |
EXECUTABLE_BASENAME
The basename of the executable that is able to run multiple
jobs via mpi.
|
CLUSTERED_JOB_PREFIX, DERIVATION_NAMESPACE, DERIVATION_VERSION, mBag, mClusteredADag, mDirectory, mGridStartFactory, mLogger, MONITORD_COMMENT_MARKER, mProps, mSiteStore, mTCHandle, TRANSFORMATION_NAMESPACE, TRANSFORMATION_VERSION
VERSION
Constructor and Description |
---|
MPIExec()
The default constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
abortOnFristJobFailure()
Returns a boolean indicating whether to fail the aggregated job on
detecting the first failure during execution of constituent jobs.
|
String |
aggregatedJobArguments(AggregatedJob job)
Returns the arguments with which the
AggregatedJob
needs to be invoked with. |
private void |
complain(String message,
String id,
String value)
Complains for invalid values passed in profiles
|
boolean |
entryNotInTC(String site)
Determines whether there is NOT an entry in the transformation catalog
for the job aggregator executable on a particular site.
|
File |
generatePMCInputFile(Graph job,
String name,
boolean isClustered)
Writes out the input file for the aggregated job
|
String |
getClusterExecutableBasename()
Returns the executable basename of the clustering executable used.
|
String |
getClusterExecutableLFN()
Returns the logical name of the transformation that is used to
collapse the jobs.
|
String |
getCPURequirementsArgument(Job job)
Looks at the profile keys associated with the job to generate the argument
string fragment containing the cpu required for the job.
|
String |
getExtraArguments(Job job)
Looks at the profile key for pegasus::pmc_task_arguments to determine if extra
arguments are required for the task.
|
String |
getMemoryRequirementsArgument(Job job)
Looks at the profile keys associated with the job to generate the argument
string fragment containing the memory required for the job.
|
String |
getPriorityArgument(Job job)
Looks at the profile keys associated with the job to generate the argument
string fragment containing the priority to be associated for the job.
|
void |
initialize(ADag dag,
PegasusBag bag)
Initializes the JobAggregator impelementation
|
void |
makeAbstractAggregatedJobConcrete(AggregatedJob job)
Enables the abstract clustered job for execution and converts it to it's
executable form.
|
void |
setAbortOnFirstJobFailure(boolean fail)
Setter method to indicate , failure on first consitutent job should
result in the abort of the whole aggregated job.
|
boolean |
topologicalOrderingRequired()
A boolean indicating whether ordering is important while traversing
through the aggregated job.
|
protected File |
writeOutInputFileForJobAggregator(AggregatedJob job)
Writes out the input file for the aggregated job
|
constructAbstractAggregatedJob, constructAbstractAggregatedJob, entryNotInTC, getCommentString, getCompleteTranformationName, getTCEntry, setDirectory
public static final String COLLAPSE_LOGICAL_NAME
public static String EXECUTABLE_BASENAME
public void initialize(ADag dag, PegasusBag bag)
initialize
in interface JobAggregator
initialize
in class Abstract
dag
- the workflow that is being clustered.bag
- the bag of objects that is useful for initialization.public void makeAbstractAggregatedJobConcrete(AggregatedJob job)
makeAbstractAggregatedJobConcrete
in interface JobAggregator
makeAbstractAggregatedJobConcrete
in class Abstract
job
- the abstract clustered jobprotected File writeOutInputFileForJobAggregator(AggregatedJob job)
writeOutInputFileForJobAggregator
in class Abstract
job
- the aggregated jobpublic File generatePMCInputFile(Graph job, String name, boolean isClustered)
job
- the aggregated jobname
- the name of PMC file to be generatedisClustered
- a boolean indicating whetehre the graph belongs to a
clustered job or not.public String getClusterExecutableLFN()
COLLAPSE_LOGICAL_NAME
public String getClusterExecutableBasename()
EXECUTABLE_BASENAME
public boolean entryNotInTC(String site)
site
- the site at which existence check is required.public String aggregatedJobArguments(AggregatedJob job)
AggregatedJob
needs to be invoked with. At present any empty argument string is
returned.aggregatedJobArguments
in class Abstract
job
- the AggregatedJob
for which the arguments have
to be constructed.public void setAbortOnFirstJobFailure(boolean fail)
fail
- indicates whether to abort or not .public boolean abortOnFristJobFailure()
public boolean topologicalOrderingRequired()
public String getCPURequirementsArgument(Job job)
job
- the Job for which memory requirements has to be determined.public String getMemoryRequirementsArgument(Job job)
job
- the Job for which memory requirements has to be determined.public String getPriorityArgument(Job job)
job
- the Job for which memory requirements has to be determined.public String getExtraArguments(Job job)
job
- the constitunt job for which extra arguments need to be determined