Class Heft
- java.lang.Object
-
- edu.isi.pegasus.planner.selector.site.Abstract
-
- edu.isi.pegasus.planner.selector.site.Heft
-
- All Implemented Interfaces:
SiteSelector
public class Heft extends Abstract
The HEFT based site selector. The runtime for the job in seconds is picked from the pegasus profile key runtime in the transformation catalog for a transformation.The data communication costs between jobs if scheduled on different sites is assumed to be fixed. Later on if required, the ability to specify this value will be exposed via properties.
The number of processors in a site is picked by the attribute idle-nodes associated with the vanilla jobmanager for a site in the site catalog.
- Version:
- $Revision$
- Author:
- Karan Vahi
- See Also:
Algorithm.AVERAGE_BANDWIDTH
,Algorithm.RUNTIME_PROFILE_KEY
,Algorithm.DEFAULT_NUMBER_OF_FREE_NODES
,Algorithm.AVERAGE_DATA_SIZE_BETWEEN_JOBS
,GridGateway.mIdleNodes
-
-
Field Summary
Fields Modifier and Type Field Description private Algorithm
mHeftImpl
An instance of the class that implements the HEFT algorithm.-
Fields inherited from class edu.isi.pegasus.planner.selector.site.Abstract
mBag, mLogger, mProps, mSiteStore, mTCMapper
-
Fields inherited from interface edu.isi.pegasus.planner.selector.SiteSelector
SITE_NOT_FOUND, VERSION
-
-
Constructor Summary
Constructors Constructor Description Heft()
The default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
description()
This method returns a String describing the site selection technique that is being implemented by the implementing class.void
initialize(edu.isi.pegasus.planner.classes.PegasusBag bag)
Initializes the site selector.void
mapWorkflow(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites)
Maps the jobs in the workflow to the various grid sites.void
mapWorkflow(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites, java.lang.String label)
Maps the jobs in the workflow to the various grid sites.
-
-
-
Field Detail
-
mHeftImpl
private Algorithm mHeftImpl
An instance of the class that implements the HEFT algorithm.
-
-
Method Detail
-
initialize
public void initialize(edu.isi.pegasus.planner.classes.PegasusBag bag)
Initializes the site selector.- Specified by:
initialize
in interfaceSiteSelector
- Overrides:
initialize
in classAbstract
- Parameters:
bag
- the bag of objects that is useful for initialization.
-
mapWorkflow
public void mapWorkflow(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites)
Maps the jobs in the workflow to the various grid sites. The jobs are mapped by setting the site handle for the jobs.- Parameters:
workflow
- the workflow.sites
- the list ofString
objects representing the execution sites that can be used.
-
mapWorkflow
public void mapWorkflow(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites, java.lang.String label)
Maps the jobs in the workflow to the various grid sites. The jobs are mapped by setting the site handle for the jobs.- Parameters:
workflow
- the workflow in a Graph form.sites
- the list ofString
objects representing the execution sites that can be used.label
- the label of the workflow
-
description
public java.lang.String description()
This method returns a String describing the site selection technique that is being implemented by the implementing class.- Returns:
- String
-
-