edu.isi.pegasus.planner.selector.site
Class Heft

java.lang.Object
  extended by edu.isi.pegasus.planner.selector.site.Abstract
      extended by 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: 2590 $
Author:
Karan Vahi
See Also:
Algorithm.AVERAGE_BANDWIDTH, Algorithm.RUNTIME_PROFILE_KEY, Algorithm.DEFAULT_NUMBER_OF_FREE_NODES, Algorithm.AVERAGE_DATA_SIZE_BETWEEN_JOBS, org.griphyn.cPlanner.classes.JobManager#IDLE_NODES

Field Summary
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
Heft()
          The default constructor.
 
Method Summary
 String description()
          This method returns a String describing the site selection technique that is being implemented by the implementing class.
 void initialize(PegasusBag bag)
          Initializes the site selector.
 void mapWorkflow(ADag workflow, List sites)
          Maps the jobs in the workflow to the various grid sites.
 void mapWorkflow(Graph workflow, List sites)
          Maps the jobs in the workflow to the various grid sites.
 void mapWorkflow(Graph workflow, List sites, String label)
          Maps the jobs in the workflow to the various grid sites.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mHeftImpl

private Algorithm mHeftImpl
An instance of the class that implements the HEFT algorithm.

Constructor Detail

Heft

public Heft()
The default constructor.

Method Detail

initialize

public void initialize(PegasusBag bag)
Initializes the site selector.

Specified by:
initialize in interface SiteSelector
Overrides:
initialize in class Abstract
Parameters:
bag - the bag of objects that is useful for initialization.

mapWorkflow

public void mapWorkflow(ADag workflow,
                        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.

Specified by:
mapWorkflow in interface SiteSelector
Overrides:
mapWorkflow in class Abstract
Parameters:
workflow - the workflow.
sites - the list of String objects representing the execution sites that can be used.

mapWorkflow

public void mapWorkflow(Graph workflow,
                        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 in a Graph form.
sites - the list of String objects representing the execution sites that can be used.

mapWorkflow

public void mapWorkflow(Graph workflow,
                        List sites,
                        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 of String objects representing the execution sites that can be used.
label - the label of the workflow

description

public String description()
This method returns a String describing the site selection technique that is being implemented by the implementing class.

Returns:
String


Copyright © 2011 The University of Southern California. All Rights Reserved.